*{box-sizing:border-box} :root{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Microsoft YaHei','PingFang SC',sans-serif;color:#263c4c;background:#edf1f5;font-synthesis:none;--blue:#245479;--ink:#183b56;--line:#dfe6ec;--muted:#748390;--orange:#c57633}body{margin:0;font-size:16px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #dd963f;outline-offset:3px}button{border:1px solid #d9e2e9;background:#fff;color:var(--ink);border-radius:5px;padding:10px 16px;line-height:1.3;transition:background .15s,transform .15s}button:hover{background:#edf4fa}button.primary{background:var(--blue);color:white;border-color:var(--blue)}button.primary:hover{background:#183f60}button.ghost{background:transparent;border-color:transparent}button.danger{color:#a53f3f}button.small{font-size:14px;padding:7px 10px}a{color:#245479;text-underline-offset:4px}h1,h2,h3,p{margin-top:0}h1{font-size:30px;line-height:1.4;letter-spacing:.03em}h2{font-size:21px;font-weight:600}h3{font-size:16px}p{line-height:1.85}small,.meta{font-size:13px;color:var(--muted)}.muted{color:var(--muted)}.eyebrow{font-size:13px;letter-spacing:.14em;font-weight:600;color:#638198}.brand{display:flex;gap:12px;align-items:center}.brand-mark{height:40px;width:40px;display:grid;place-items:center;background:var(--blue);color:#fff;font-size:17px;font-weight:700;letter-spacing:-2px;border-radius:5px}.brand strong{display:block;font-size:17px;letter-spacing:.07em}.brand small{display:block;font-size:12px;margin-top:3px}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);padding:0 30px;display:flex;align-items:center;justify-content:space-between;gap:20px;position:sticky;top:0;z-index:10}.userbox{display:flex;align-items:center;gap:12px;font-size:14px}.avatar{width:38px;height:38px;display:grid;place-items:center;background:#dce7ef;color:#44637a;border-radius:6px;font-size:16px;flex-shrink:0}.avatar.cat{background:#f7dec3;font-size:26px}.layout{display:grid;grid-template-columns:206px minmax(0,1fr);min-height:calc(100vh - 76px)}.sidebar{background:#f8fafc;border-right:1px solid var(--line);padding:26px 14px;display:flex;flex-direction:column;gap:5px}.navlabel{font-size:12px;color:#8996a2;padding:4px 14px 12px;letter-spacing:.1em}.navbutton{display:flex;gap:12px;align-items:center;text-align:left;border-color:transparent;background:transparent;font-size:14px;padding:13px 14px;width:100%;color:#657b8b}.navbutton.active{background:#e4edf5;color:#204b6d;font-weight:600;border-color:#dce6f0}.navicon{font-size:16px;width:23px;text-align:center}.lock{margin-left:auto;font-size:12px}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:18px}.main{padding:27px 34px 45px;min-width:0;max-width:1530px;width:100%;margin:0 auto}.breadcrumb{font-size:13px;color:#8895a0;margin-bottom:24px}.heading{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:24px}.heading h1{margin-bottom:4px;font-size:26px}.heading p{font-size:14px;color:#83909c;margin:0}.badge{display:inline-block;font-size:12px;padding:5px 9px;background:#f0f4f7;color:#667e91;border:1px solid #e2e8ef;border-radius:4px;white-space:nowrap}.badge.warn{background:#fff4e7;color:#a96825;border-color:#efd9be}.badge.ok{background:#eaf3f3;color:#3b7276;border-color:#d7e7e7}.banner{background:#fff8ef;border:1px solid #ecd9bf;border-left:3px solid #ce8c48;padding:22px 24px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-radius:5px}.banner h2{font-size:19px;color:#916333;margin-bottom:8px}.banner p{margin:0;font-size:14px;color:#8a7763}.banner .timer{font-size:13px;color:#a37b50;margin-bottom:9px;letter-spacing:.02em}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.workgrid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px}.card{background:white;border:1px solid var(--line);border-radius:6px;padding:24px;min-width:0}.card h2{font-size:17px;margin-bottom:20px}.cardhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.cardhead h2,.cardhead h3{margin:0}.row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 0;border-top:1px solid #edf0f3}.row:first-child{border-top:0}.row p{margin:4px 0 0;font-size:14px;color:#81909b}.appgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.app-tile{padding:19px 10px;background:#fafcfd;display:flex;align-items:center;gap:12px;text-align:left}.app-tile .tileicon{width:42px;height:42px;display:grid;place-items:center;background:#e4edf5;color:#3a6484;font-size:19px;border-radius:8px;flex-shrink:0}.app-tile strong{font-size:14px;font-weight:500}.app-tile small{display:block;font-size:12px;margin-top:4px}.stack{display:flex;flex-direction:column;gap:20px}.identity{padding:24px;background:#fff}.identityhead{display:flex;gap:14px;align-items:center;padding-bottom:22px}.identity .avatar{height:52px;width:52px;font-size:24px}.identity strong{font-size:19px}.identity small{display:block;margin-top:6px}.keyval{display:flex;justify-content:space-between;gap:16px;font-size:14px;padding:9px 0}.statusline{border-top:1px solid var(--line);margin-top:18px;padding-top:18px;font-size:13px;color:#9d744a}.cat-sticker{border-top:1px dashed #e5dacb;margin-top:22px;padding-top:16px;display:flex;gap:14px;align-items:center;font-size:13px;color:#a08a74}.cat-sticker span{font-size:37px}.progress-track{height:5px;background:#eaf0f5;border-radius:5px;overflow:hidden;margin:15px 0}.progress-fill{height:100%;background:#6389a7;transition:width .4s}.textbutton{border:0;background:transparent;padding:0;color:#426c8d;text-align:left;font-size:14px}.sectiongap{margin-top:24px}.subtle{font-size:13px;color:#8b99a5}.notification{display:flex;gap:13px;padding:15px 0;border-top:1px solid #edf0f3}.notification p{font-size:14px;line-height:1.65;margin:5px 0}.notification time{font-size:12px;color:#8b99a5}.notification .avatar{height:33px;width:33px;font-size:14px}.inline{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:22px;flex-wrap:wrap}.tabs button{font-size:14px;border-color:transparent;background:transparent}.tabs button.active{color:#235878;background:#e6eff7}.listcard{padding:0 23px}.datechip{width:52px;text-align:center;background:#f0f4f8;color:#627a8e;padding:8px 3px;border-radius:5px;flex-shrink:0}.datechip b{display:block;font-size:22px;color:#2d526b}.grow{flex:1;min-width:0}.detailhead{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:20px}.detailhead h2{margin-bottom:10px}.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px}.facts .keyval{border-bottom:1px solid #edf0f3;padding:14px 0}.attachment{display:flex;gap:12px;align-items:center;text-align:left;padding:13px 16px;max-width:100%;background:#f8fafc;font-size:14px}.fileicon{font-size:12px;border:1px solid #cbd8e3;padding:8px 5px;border-radius:3px;background:white;color:#708ba0;flex-shrink:0}.attachment small{display:block;margin-top:5px}.approval{border-left:2px solid #dce5ed;margin:20px 0 20px 10px;padding:2px 0 2px 20px}.approval p{font-size:14px;margin:8px 0}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}label{display:block;font-size:14px;line-height:1.7}input,select,textarea{display:block;width:100%;border:1px solid #cedae4;border-radius:4px;padding:11px 12px;background:#fff;color:#29485e;margin-top:6px;min-width:0}input[type=checkbox]{display:inline-block;width:auto;margin:0 8px 0 0}.warningbox{background:#fff8ee;border:1px solid #efdfc9;padding:16px 18px;color:#946b3b;font-size:14px;line-height:1.8;border-radius:4px;margin:18px 0}.infobox{background:#edf4f9;border:1px solid #dce8f1;padding:16px 18px;font-size:14px;line-height:1.8;border-radius:4px;margin:18px 0}.bigstat{font-size:42px;font-weight:500;line-height:1.1;color:#2c5878;margin:18px 0 8px;font-variant-numeric:tabular-nums}.bigstat span{font-size:15px;color:#7d8e9c;margin-left:5px}.statcaption{font-size:13px;color:#8693a0}.tablewrap{overflow-x:auto;max-width:100%}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px;min-width:540px}th{font-weight:500;color:#768b9b;background:#f4f7fa}td,th{padding:15px 17px;border-bottom:1px solid #e7edf2;line-height:1.6}td.negative{color:#b26a47}td.positive{color:#407575}.chatlayout{display:grid;grid-template-columns:240px minmax(0,1fr);background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden;min-height:590px}.chatlist{background:#f8fafc;border-right:1px solid var(--line);max-height:680px;overflow:auto}.chatlist .search{padding:17px 13px;border-bottom:1px solid var(--line)}.chatitem{width:100%;border:0;border-bottom:1px solid #e8edf2;background:transparent;border-radius:0;text-align:left;display:flex;gap:10px;padding:16px 13px}.chatitem.selected{background:#e6eef5}.chatitem strong{font-size:14px;font-weight:500}.chatitem small{display:block;line-height:1.5;margin-top:5px}.chatpanel{display:flex;flex-direction:column;min-width:0}.chatheader{padding:20px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px}.chatheader strong{font-size:16px;font-weight:500}.chatbody{background:#f0f3f6;flex:1;padding:25px;max-height:650px;overflow:auto}.chatdate{text-align:center;font-size:12px;color:#93a0aa;margin-bottom:23px}.message{display:flex;gap:11px;margin:18px 0;align-items:start}.message.self{flex-direction:row-reverse}.message .name{font-size:12px;color:#8a97a2;margin-bottom:7px}.bubble{display:inline-block;max-width:100%;padding:12px 15px;background:white;border:1px solid #e2e8ec;border-radius:4px;line-height:1.7;font-size:15px;white-space:pre-wrap}.self .bubble{background:#dceaf4;border-color:#cbdde9}.self .name{text-align:right}.chatfooter{padding:17px 24px;font-size:13px;color:#8b99a5;background:#fff}.empty{padding:45px 25px;text-align:center;color:#8d9ba6;line-height:1.9}.preview{position:relative;aspect-ratio:4/3;background:#edf1f4;border:1px solid #e1e6ea;overflow:hidden;display:grid;place-items:center;margin-bottom:16px}.preview img{position:absolute;width:100%;height:100%;object-fit:cover;opacity:.4}.preview .placeholder-content{position:relative;z-index:1;text-align:center;padding:20px}.preview .picture-label{font-size:45px;display:block;color:#7b8c99;margin-bottom:20px;white-space:pre-wrap}.preview.catphoto{background:#fff0dd}.preview.catphoto .picture-label{font-size:95px}.preview small{color:#84919c;display:block}.preview .corner-detail{position:absolute;right:22px;bottom:18px;padding:7px 12px;z-index:2;background:white;font-size:16px;box-shadow:0 1px 5px #233a4820}.preview.zoomed .corner-detail{font-size:50px;right:50%;bottom:40%;transform:translateX(50%)}.preview.zoomed .placeholder-content{opacity:.14}.preview-desc{font-size:15px;line-height:1.85}.filegrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.filecard{padding:18px;border:1px solid var(--line);border-radius:5px}.filecard .attachment{border:0;padding:0;background:none;width:100%}.filecard .meta{display:block;margin-top:13px}.source{font-size:13px;color:#8293a1;margin-top:8px}.endpage{max-width:780px;margin:48px auto}.endcode{font-size:13px;letter-spacing:.15em;color:#8297a8;margin-bottom:18px}.endpage h1{font-size:37px;font-weight:500;margin-bottom:28px}.endquote{font-size:21px;line-height:2.2;border-left:3px solid #b8cbd9;padding-left:22px;margin:27px 0}.endactions{border-top:1px solid var(--line);padding-top:24px;margin-top:30px}.startscreen{min-height:100vh;background:#eaf0f5;display:flex;flex-direction:column}.startheader{padding:28px 46px;border-bottom:1px solid #dbe4ec}.startmain{width:100%;max-width:1100px;margin:auto;display:grid;grid-template-columns:1.3fr 1fr;padding:70px 35px;gap:85px;align-items:center}.startmain h1{font-size:47px;font-weight:600;letter-spacing:.08em;margin:20px 0 24px;line-height:1.5}.startmain .subtitle{color:#668096;font-size:16px;margin-bottom:35px}.startbadge{display:inline-flex;gap:8px;font-size:12px;color:#8094a5;letter-spacing:.1em}.startnotice{background:#fff;border:1px solid #dce5ed;box-shadow:0 12px 50px #193c5410;border-radius:6px;transform:rotate(-1deg);padding:26px}.startnotice .bubble{background:#f0f4f7}.startnotice .alertstrip{background:#fbf4ea;color:#986c3a;padding:18px;margin:23px -26px -26px;font-size:14px;border-top:1px solid #ecdfce}.startfooter{font-size:12px;color:#8c9dab;padding:22px 46px;display:flex;justify-content:space-between;gap:20px}.startactions{display:flex;gap:12px;flex-wrap:wrap}.startactions .primary{padding:14px 28px}.startmeta{margin-top:26px;font-size:13px;color:#8d9ba8;line-height:2}.mobile-only{display:none}dialog{width:min(690px,calc(100vw - 28px));max-height:88vh;border:1px solid #d6e1e9;border-radius:8px;padding:0;box-shadow:0 25px 90px #19395030;color:#294255;animation:appear .35s ease}dialog::backdrop{background:#17344a70;backdrop-filter:blur(2px)}.modalhead{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 23px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:3}.modalhead h2{font-size:16px;margin:0;overflow-wrap:anywhere}.modalbody{padding:24px}.modalfoot{padding:15px 24px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}#toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#26455c;color:#fff;max-width:calc(100vw - 30px);width:max-content;padding:14px 22px;border-radius:5px;box-shadow:0 8px 28px #15354a30;font-size:14px;z-index:100;transition:.3s;line-height:1.6}#toast.visible{opacity:1;transform:translate(-50%,0)}@keyframes appear{from{opacity:.3}to{opacity:1}}.fade{animation:none}.back{margin-bottom:18px}.noteitem{display:flex;gap:14px;font-size:14px;padding:16px 0;line-height:1.8;border-bottom:1px solid var(--line)}.noteitem span{font-size:12px;color:#9baab6;padding-top:2px}.footerhint{margin:28px 0 0;font-size:12px;color:#91a0ac;text-align:center}.redacted{color:#8d9aa5;letter-spacing:.07em}.overflowword{overflow-wrap:anywhere}
@media(min-width:1450px){.main{padding:36px 50px}.workgrid{grid-template-columns:minmax(0,1fr) 330px}.app-tile{padding:25px 15px}.topbar{padding:0 40px}}
@media(max-width:1100px){.workgrid{grid-template-columns:minmax(0,1fr) 270px}.appgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.main{padding:24px}.layout{grid-template-columns:175px minmax(0,1fr)}.sidebar{padding:20px 8px}.grid{gap:12px}.card{padding:20px}.chatlayout{grid-template-columns:205px minmax(0,1fr)}.startmain{gap:40px}.startmain h1{font-size:39px}}
@media(max-width:820px){.layout{display:block}.sidebar{position:fixed;bottom:0;left:0;right:0;z-index:15;display:flex;flex-direction:row;overflow-x:auto;border-top:1px solid var(--line);border-right:0;background:#fff;padding:6px 7px;gap:0}.navlabel,.sidebar-bottom{display:none}.navbutton{min-width:70px;padding:7px 5px;display:flex;flex-direction:column;gap:4px;font-size:12px}.navicon{font-size:16px}.navbutton .lock{display:none}.topbar{height:66px;padding:0 18px}.topbar .brand small,.userbox .username{display:none}.brand strong{font-size:15px}.brand-mark{width:34px;height:34px}.userbox{gap:4px}.userbox .avatar{width:32px;height:32px;font-size:14px}.main{padding:20px 17px 100px}.breadcrumb{margin-bottom:18px;font-size:12px}.workgrid{grid-template-columns:1fr}.identity{display:none}.main .heading{gap:10px}.heading h1{font-size:23px}.heading p{font-size:13px}.banner{padding:19px 17px;align-items:flex-start;flex-direction:column;gap:14px}.banner button{align-self:flex-end}.grid,.grid.two{grid-template-columns:1fr}.grid.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.card{padding:20px}.appgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.app-tile{flex-direction:column;gap:10px;text-align:center;padding:18px 6px}.app-tile small{font-size:12px}.notification p{font-size:14px}.listcard{padding:0 14px}.row{gap:10px;padding:16px 0}.row strong{font-size:14px;line-height:1.7}.row .inline{justify-content:flex-end}.facts{grid-template-columns:1fr}.formgrid{grid-template-columns:1fr}.filegrid{grid-template-columns:1fr}.chatlayout{display:block;min-height:60vh}.chatlist{max-height:none;border-right:0}.chatitem{padding:18px}.chatlayout.has-chat .chatlist{display:none}.chatlayout:not(.has-chat) .chatpanel{display:none}.chatbody{padding:18px 14px;max-height:58vh;min-height:38vh}.chatheader{padding:16px}.chatfooter{padding:14px}.mobile-only{display:block}.startheader{padding:22px}.startmain{display:flex;flex-direction:column;padding:38px 24px;gap:35px;align-items:stretch;max-width:560px}.startmain h1{font-size:35px;margin:15px 0}.startmain .subtitle{font-size:14px;margin-bottom:25px}.startnotice{margin:0 8px;padding:21px}.startnotice .alertstrip{margin:18px -21px -21px}.startfooter{padding:22px;font-size:12px;flex-wrap:wrap}.startmeta{font-size:12px}.startactions button{font-size:14px}.endpage{margin:20px 0}.endpage h1{font-size:29px}.endquote{font-size:18px}.preview .picture-label{font-size:33px}.preview.catphoto .picture-label{font-size:76px}.preview.zoomed .corner-detail{font-size:38px}.modalbody{padding:18px}.modalhead{padding:15px 18px}.modalfoot{padding:15px 18px}.datechip{width:44px}.datechip b{font-size:20px}.badge{font-size:12px;padding:4px 6px}#toast{bottom:90px}.keyval{line-height:1.7}.heading>.badge{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.preview.original img{opacity:1;object-fit:contain}.preview.original .placeholder-content,.preview.original .corner-detail{display:none}

td:first-child,th:first-child{white-space:nowrap}
@media(max-width:820px){.row{flex-wrap:wrap}.row>.attachment{width:100%}.navbutton{min-width:80px}.navbutton>span{white-space:nowrap}.preview .placeholder-content{max-width:100%}}
@media(max-width:380px){.topbar .userbox>.meta{display:none}}

/* 2.0 visual rebuild — restrained Chinese enterprise workspace */
:root{--blue:#2f6fce;--ink:#1f2329;--muted:#8f959e;--line:#e5e7eb;background:#f4f5f7;color:var(--ink)}
body{font-size:14px;background:#f4f5f7}.topbar{height:64px;padding:0 24px;box-shadow:0 1px 3px #1f232908}.brand-mark{background:#2f6fce;border-radius:9px}.brand strong{letter-spacing:0}.brand small{color:#a0a5ad}.top-search{width:min(390px,34vw);height:34px;border:1px solid #e2e5e9;border-radius:6px;background:#f5f6f7;color:#a4a9b0;display:flex;align-items:center;padding:0 14px;font-size:13px}.layout{grid-template-columns:192px minmax(0,1fr);min-height:calc(100vh - 64px)}.sidebar{background:#fff;padding:20px 10px}.navbutton{border-radius:6px;padding:12px;color:#646a73}.navbutton.active{background:#eaf2ff;border-color:transparent;color:#245fbd}.navicon{height:26px;width:26px;border-radius:6px;background:#f0f2f5;display:grid;place-items:center;font-size:13px}.navbutton.active .navicon{background:#d8e8ff}.main{max-width:1400px;padding:28px 34px 48px}.breadcrumb{color:#a0a5ad;margin-bottom:20px}.card{border-radius:8px;border-color:#e8eaed;box-shadow:0 1px 2px #1f232908}.banner{border:0;border-left:4px solid #e19a4d;background:linear-gradient(100deg,#fff9f1,#fff);box-shadow:0 1px 3px #1f23290c;border-radius:8px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px}.business-list{border-top:1px solid #edf0f2}.business-row{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid #edf0f2}.business-row p{margin:4px 0 0;color:#8f959e;font-size:12px}.task-dot{width:9px;height:9px;border-radius:50%;background:#f0a44b;flex:0 0 auto}.task-dot.done{background:#36a269}.system-avatar{width:36px;height:36px;border-radius:7px;background:#2f6fce;color:#fff;display:grid;place-items:center;font-weight:600;flex:none}.schedule>div:not(.cardhead){display:grid;grid-template-columns:50px 1fr;padding:13px 0;border-top:1px solid #eef0f2}.schedule time{color:#8f959e}.schedule p{font-size:13px;line-height:1.5;margin:0}.block{display:block;margin-top:6px;white-space:normal;line-height:1.5}.work-doc{border:1px solid #e3e6ea;background:#fafbfc;padding:22px;line-height:1.8}.doc-head{font-size:12px;color:#8f959e;border-bottom:1px solid #e3e6ea;padding-bottom:12px;margin-bottom:18px;letter-spacing:.06em}
.avatar{overflow:hidden;background:#e6e9ed;border-radius:5px}.avatar img{width:100%;height:100%;object-fit:cover;display:block}.avatar.cat{border-radius:50%;background:#f0c995}.identity .avatar{border-radius:9px}.notification .avatar{width:38px;height:38px}.start-status{font-size:12px;color:#8f959e}.windowbar{height:42px;margin:-26px -26px 22px;padding:0 16px;border-bottom:1px solid #e7e9ed;background:#fafbfc;display:flex;align-items:center;gap:7px;color:#9298a1;font-size:12px}.windowbar i{width:8px;height:8px;border-radius:50%;background:#d8dbe0}.windowbar span{margin-left:6px}.startscreen{background:radial-gradient(circle at 72% 35%,#edf4ff 0,#f4f6f9 36%,#f1f3f6 100%)}.startheader{padding:24px 42px;background:#ffffffa8;backdrop-filter:blur(12px)}.startmain{max-width:1120px;grid-template-columns:1fr 450px;gap:90px;padding:64px 32px}.startmain h1{font-family:'Songti SC','STSong',serif;font-size:54px;font-weight:600;letter-spacing:.11em;margin:22px 0}.startcopy .subtitle{font-size:16px;line-height:2;color:#6d7480}.startnotice{transform:none;border-radius:10px;border:1px solid #e1e5eb;box-shadow:0 24px 70px #2638521c;padding:26px}.startnotice .identityhead{padding-bottom:18px}.startnotice .avatar{width:44px;height:44px}.startnotice .message{margin:10px 0 28px}.startnotice .alertstrip{border-radius:0 0 10px 10px;background:#fff8ed}.startfooter{background:#ffffff80}
.wechat-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.wechat-title h1{font-size:24px;margin:0 0 3px}.wechat-title p{margin:0;color:#8f959e;font-size:13px}.wechat-shell{display:grid;grid-template-columns:58px 300px minmax(0,1fr);height:calc(100vh - 148px);min-height:610px;background:#fff;border:1px solid #dfe2e6;border-radius:8px;overflow:hidden;box-shadow:0 8px 30px #20283310}.wechat-rail{background:#292d33;padding:18px 10px 12px;display:flex;flex-direction:column;align-items:center;gap:14px}.wechat-rail .avatar{width:36px;height:36px;border-radius:4px;margin-bottom:8px}.rail-icon{width:36px;height:36px;display:grid;place-items:center;color:#a9adb3;border-radius:6px}.rail-icon.active{color:#fff;background:#3c4148}.rail-spacer{flex:1}.chatlist{background:#f7f8fa;border-right:1px solid #e1e3e6;overflow:auto}.chatlist .search{padding:14px 12px;border-bottom:1px solid #e3e5e8;background:#f7f8fa;position:sticky;top:0;z-index:2}.chatlist .search form{display:grid;grid-template-columns:1fr auto;gap:7px}.chatlist .search input{margin:0;padding:8px 10px;background:#ebedf0;border:0}.chatitem{border:0;border-radius:0;background:transparent;width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;text-align:left;padding:13px 12px}.chatitem:hover,.chatitem.selected{background:#e8eaed}.chatitem .avatar{width:42px;height:42px;border-radius:5px}.chat-summary{min-width:0}.chat-summary strong,.chat-summary small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-summary strong{font-weight:500;margin-bottom:6px}.chat-summary small{color:#8f959e;font-size:12px}.chatitem time{font-size:11px;color:#a8adb4;align-self:start;padding-top:2px}.chatpanel{display:flex;flex-direction:column;min-width:0;background:#f4f5f7}.chatheader{height:64px;padding:0 22px;background:#fff;border-bottom:1px solid #e3e5e8;display:flex;align-items:center;justify-content:space-between}.chatheader strong,.chatheader small{display:block}.chatheader small{font-size:11px;margin-top:4px}.chatbody{flex:1;max-height:none;padding:24px 34px;overflow:auto}.message .avatar{border-radius:5px}.message.self .avatar{order:2}.message.self{justify-content:flex-start}.message.self>div:nth-child(2){margin-left:auto}.message.self .bubble{background:#95ec69;border-color:#8ddd62}.bubble{border-radius:5px;box-shadow:0 1px 1px #1f23290d;background:#fff}.chatfooter{min-height:49px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e1e3e6;padding:9px 18px;background:#fff}.chat-empty{margin:auto;text-align:center;color:#a2a7ae}.chat-empty span{width:56px;height:56px;border-radius:14px;background:#e1e4e8;display:grid;place-items:center;margin:auto;font-size:22px;color:#fff}.chat-empty p{margin-top:12px;font-size:13px}
.preview.evidence-photo{aspect-ratio:auto;min-height:360px;max-height:65vh;background:#15171a;border:0;border-radius:6px}.preview.evidence-photo img{position:relative;width:100%;height:100%;max-height:65vh;object-fit:contain;opacity:1;transition:transform .25s}.preview.zoomed{overflow:auto;display:block}.preview.zoomed img{max-height:none;transform:scale(1.85);transform-origin:top right}.document-preview{min-height:360px;width:100%;background:#fff;display:grid;place-items:center;align-content:center;gap:18px}.document-preview span{padding:8px 12px;border:1px solid #d8dde4;color:#6e7580}.document-preview b{font-size:26px;font-weight:500}.cat-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}.cat-strip img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:6px}.cat-ending-photo{margin:18px 0}.cat-ending-photo img{width:min(100%,540px);border-radius:8px;display:block}.evidence-photo+.preview-desc{margin-top:18px}
@media(max-width:1000px){.dashboard-grid{grid-template-columns:1fr 260px}.wechat-shell{grid-template-columns:52px 250px minmax(0,1fr)}.top-search{display:none}}
@media(max-width:820px){.topbar{height:60px}.layout{min-height:calc(100vh - 60px)}.main{padding:18px 15px 94px}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid>aside{display:none}.sidebar{padding:5px 5px}.navbutton{min-width:74px}.navicon{height:24px;width:24px}.business-row{flex-wrap:wrap}.business-row .grow{min-width:180px}.wechat-title{margin-bottom:12px}.wechat-shell{height:calc(100vh - 155px);min-height:560px;display:grid;grid-template-columns:48px minmax(0,1fr)}.wechat-rail{grid-column:1;padding:12px 6px}.wechat-shell .chatlist{grid-column:2}.wechat-shell .chatpanel{display:none}.wechat-shell.has-chat .chatlist{display:none}.wechat-shell.has-chat .chatpanel{display:flex;grid-column:2}.chatbody{padding:18px 12px}.message{gap:8px}.message .avatar{width:34px;height:34px}.chatfooter{font-size:11px;gap:8px}.startmain{grid-template-columns:1fr;padding:34px 22px;gap:32px}.startmain h1{font-size:39px}.startnotice{margin:0}.startheader{padding:18px 20px}.start-status{display:none}.startfooter{padding:18px 20px}.preview.evidence-photo{min-height:260px}.preview.zoomed img{transform:scale(2.2)}.cat-strip{grid-template-columns:1fr 1fr}.topbar .meta{display:none}}

.end-avatar{width:85px;height:85px;border-radius:10px}.cat-ending-photo img{aspect-ratio:4/3;object-fit:cover;object-position:center}
@media(max-width:820px){.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.tablewrap table{min-width:720px}.business-row .badge{margin-left:21px}.main>.heading{padding-right:4px}}
.user-profile{display:flex;align-items:center;gap:10px;padding:5px 8px;border-color:transparent;background:transparent}.user-profile:hover{background:#eef3f7}.record-select{display:grid;gap:10px}.record-check{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:5px;background:#fafcfd;cursor:pointer}.record-check:has(input:checked){border-color:#86a8c0;background:#edf5fa}.record-check input{width:18px;height:18px;margin:0}.record-check small{display:block;margin-top:4px}.form-action{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}[data-action="catUnknown"]{display:none}.profile-page{display:flex;align-items:center;gap:18px}.profile-photo{width:72px;height:72px}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}.profile-grid div{padding:14px;background:#f5f8fa;border:1px solid var(--line)}.profile-grid span,.profile-grid strong{display:block}.profile-grid span{font-size:12px;color:var(--muted);margin-bottom:7px}
@media(max-width:620px){.form-action{align-items:stretch;flex-direction:column}.profile-grid{grid-template-columns:1fr}.username{display:none}.user-profile{padding:3px}}
.startscreen{background:#e9eef3;color:#17354b;position:relative;overflow:hidden}.startscreen:before{content:"QH";position:absolute;right:-2vw;bottom:-18vh;font-size:min(42vw,620px);font-weight:800;line-height:1;color:#dce5ec;letter-spacing:-.1em;pointer-events:none}.startheader{position:relative;z-index:2;background:#fff;padding:24px 46px}.start-status{display:flex;align-items:center;gap:8px;font-size:13px;color:#617787}.start-status i{width:8px;height:8px;border-radius:50%;background:#2f9364;box-shadow:0 0 0 4px #dff1e8}.startmain.start-login{position:relative;z-index:1;width:100%;max-width:1120px;grid-template-columns:minmax(0,1.15fr) 390px;gap:110px;padding:64px 38px}.startcopy h1{font-size:64px;letter-spacing:.12em;margin:26px 0 22px;color:#153b58}.startcopy .subtitle{font-size:18px;line-height:2;color:#5f7789}.cover-rule{width:64px;height:3px;background:#c98742;margin:34px 0 22px}.cover-meta{font-size:13px;line-height:1.9;color:#80919e;letter-spacing:.08em}.login-card{background:#fff;border:1px solid #d8e1e8;border-radius:10px;padding:30px;box-shadow:0 22px 70px #1f415914}.login-label{font-size:15px;font-weight:600;padding-bottom:20px;border-bottom:1px solid #e8edf1}.login-user{display:flex;align-items:center;gap:14px;padding:24px 0}.login-user strong,.login-user small{display:block}.login-user small{margin-top:5px}.login-avatar{width:48px;height:48px}.login-status{margin-left:auto;font-size:12px;color:#34745c;background:#e8f3ee;border:1px solid #d1e8dc;padding:5px 9px;border-radius:4px}.login-field{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-top:1px solid #edf1f4;font-size:13px}.login-field span{color:#84929c}.login-field strong{font-weight:500;text-align:right}.login-card .startactions{display:grid;margin-top:25px}.login-submit{width:100%;padding:13px}.login-secondary{width:100%;background:#f7f9fb}.login-card .startmeta{font-size:0;text-align:center;margin-top:18px}.login-card .startmeta:after{content:"系统状态保存在当前浏览器";font-size:12px;color:#8a99a5}.startfooter{position:relative;z-index:2}.message.self{flex-direction:row;justify-content:flex-end}.message.self .avatar{order:2}.message.self>div:nth-child(2){margin-left:0;text-align:right}.chat-cat-photo{display:block;width:min(260px,55vw);aspect-ratio:4/3;object-fit:cover;border-radius:5px;margin-top:10px}.preview.evidence-photo{min-height:0;max-height:none;background:#eef2f5;padding:12px}.preview.evidence-photo img{position:relative;display:block;width:auto;max-width:100%;height:auto;max-height:68vh;object-fit:contain;opacity:1;margin:auto}.heading-contact{margin-top:7px!important;color:#4c6c83!important;font-weight:500}.evidence-photo+.preview-desc{display:none}
.forwarded-message>div{max-width:min(570px,calc(100% - 49px))}.forward-card{margin-top:10px;background:#fff;border:1px solid #dde2e6;border-radius:6px;overflow:hidden;box-shadow:0 1px 3px #1f23290d}.forward-head{padding:13px 15px;background:#fafbfc;border-bottom:1px solid #e7eaed}.forward-head strong,.forward-head span,.forward-head time{display:block}.forward-head strong{font-size:14px;font-weight:600}.forward-head span{font-size:12px;color:#737b84;margin-top:4px}.forward-head time{font-size:11px;color:#a0a6ad;margin-top:5px}.forward-row{display:grid;grid-template-columns:58px minmax(0,1fr);gap:9px;padding:9px 14px;font-size:13px;line-height:1.65}.forward-row:first-of-type{padding-top:13px}.forward-row strong{font-weight:500;color:#5d7587}.forward-row span{overflow-wrap:anywhere}.forward-foot{padding:10px 14px;border-top:1px solid #eef0f2;color:#a1a7ad;font-size:11px}
@media(max-width:820px){.startmain.start-login{grid-template-columns:1fr;gap:28px;padding:38px 20px}.startcopy h1{font-size:42px}.startcopy .subtitle{font-size:16px}.cover-rule,.cover-meta{display:none}.login-card{padding:23px}.startscreen:before{font-size:70vw;bottom:8vh}.startheader{padding:17px 20px}.startheader .brand small{display:none}.startfooter{padding:17px 20px}.chat-cat-photo{width:min(230px,52vw)}}
.login-card .startmeta{font-size:12px;color:#8a99a5}.login-card .startmeta:after{content:none}
.startheader{display:flex;align-items:center;justify-content:space-between;gap:20px}
.startscreen{background:linear-gradient(90deg,#173b57 0,#173b57 55%,#edf2f6 55%,#edf2f6 100%)}.startscreen:before{content:"QH";left:-2vw;right:auto;bottom:-.08em;font-size:min(29vw,430px);color:#ffffff0a;letter-spacing:-.09em}.startmain.start-login{max-width:1180px;grid-template-columns:minmax(0,1fr) 410px;gap:120px;padding:58px 42px}.startcopy{position:relative}.startcopy h1{font-size:74px;line-height:1.04;letter-spacing:.14em;color:#fff;margin:25px 0 30px}.startcopy h1 span{display:block}.startcopy h1 span:first-child{font-size:.62em;color:#d9e5ee;letter-spacing:.18em;margin-bottom:13px}.startcopy .subtitle{font-size:17px;line-height:2.05;color:#c7d5df}.startbadge{color:#9eb3c3}.cover-rule{width:52px;background:#e29b50}.cover-meta{color:#9db0be}.login-card{border-color:#d5dee6;box-shadow:0 24px 70px #183b541f}.login-label{color:#213d52}.startfooter{background:#fff}.wechat-shell{height:calc(100dvh - 148px);min-height:520px}.chatpanel{min-height:0;overflow:hidden}.chatbody{min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
@media(max-width:820px){.startscreen{background:#edf2f6}.startscreen:before{display:none}.startmain.start-login{padding:24px 20px 38px;gap:22px}.startcopy{background:#173b57;border-radius:10px;padding:30px 25px;box-shadow:0 15px 42px #173b5724}.startcopy h1{font-size:58px;margin:18px 0 23px}.startcopy h1 span:first-child{margin-bottom:10px}.startcopy .subtitle{font-size:15px;margin:0;color:#c8d6e0}.startcopy .startbadge{font-size:11px}.login-card{box-shadow:0 14px 38px #183b5414}.wechat-shell{height:calc(100dvh - 155px);min-height:0}.chatpanel{min-height:0}.chatbody{min-height:0}}
.identity-ledger{overflow:hidden}.identity-field{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 12px;border-top:1px solid var(--line);margin:0 -2px}.identity-field p{margin-top:4px;font-size:12px;color:var(--muted)}.identity-field>span{text-align:right;font-weight:600}.identity-field.bad{background:#fff7f3;border-left:3px solid #d8794e}.identity-field.cat{background:#fffaf0;border-left:3px solid #d7a03c}.identity-score{display:flex;align-items:center;gap:15px;padding:22px 0}.identity-score b{font-size:42px;color:#c35e3c}.identity-score span{max-width:170px;color:var(--muted);line-height:1.5}.source-chain{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:15px;background:#f4f7f9;border:1px solid var(--line);border-radius:5px;font-size:12px}.source-chain i{color:#9aa8b2}.identity-choice{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding:14px;background:#f5f8fa;border:1px solid var(--line);border-radius:5px}
.status-source-card{display:block;width:min(100%,400px);margin:16px 0 28px;text-align:left;padding:0;border:1px solid #dce3e9;background:#fff;color:var(--ink);touch-action:manipulation}.status-source-card .forward-head{display:block}.status-source-foot{display:flex;justify-content:space-between;padding:12px 15px;color:#2f6fce;font-size:13px}.status-source-card:hover{background:#f7faff}
@media(max-width:820px){.wechat-shell{height:calc(100dvh - 233px);min-height:300px}.wechat-shell.has-chat .chatpanel{min-height:0;overflow:hidden}.chatbody{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.status-source-card{min-height:106px}}
@media(max-width:620px){.identity-field{align-items:flex-start}.identity-field>span{max-width:48%}.identity-choice{align-items:stretch;flex-direction:column}}
