:root{--bg:#f4f6f8;--surface:#fff;--surface-2:#eef2f6;--text:#17202a;--muted:#596675;--border:#d9dee5;--accent:#1267e8;--accent-soft:#e7f0ff;--accent-ink:#0a4fae;--nav:#101927;--nav-selected:#24344b;--success:#187a4a;--success-soft:#e5f5ed;--warning:#a05a00;--warning-soft:#fff2dd;--danger:#c83a3a;--danger-soft:#fdeaea;--shadow:0 12px 34px rgba(26,39,58,.11);--radius:12px;--radius-sm:8px;--sidebar:228px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--font:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;--body:16px;--small:12px;--label:14px;--h2:18px;--title:32px;--enter:200ms;--exit:140ms;--phone-screen-bg:var(--bg)}
:root[data-theme=dark]{color-scheme:dark;--bg:#111418;--surface:#1b2027;--surface-2:#252b33;--text:#f4f7fa;--muted:#aab4c0;--border:#343a43;--accent:#5aa7ff;--accent-soft:#172f4d;--accent-ink:#a7d0ff;--nav:#0b1018;--nav-selected:#24344b;--success:#5fd39a;--success-soft:#17382a;--warning:#f0ad58;--warning-soft:#402d18;--danger:#ff8080;--danger-soft:#442326;--shadow:0 14px 38px rgba(0,0,0,.34)}
:root[data-theme=dark] body{background:#090b0e}:root[data-theme=dark] .data-table th,:root[data-theme=dark] .filter-summary{background:var(--surface-2)}:root[data-theme=dark] .data-table td{border-bottom-color:var(--border)}:root[data-theme=dark] .notice{color:var(--accent-ink)}:root[data-theme=dark] .upload-zone{background:var(--surface-2)}:root[data-theme=dark] .chart line{stroke:var(--border)}:root[data-theme=dark] .chart polygon{fill:var(--accent-soft)}:root[data-theme=dark] .dot.light{background:#7389a5}
.app.is-inert{pointer-events:none}
*{box-sizing:border-box}body{font-family:var(--font);color:var(--text);font-size:var(--body);line-height:1.6;background:#e8ebef}button,input,select,textarea{font:inherit;color:inherit}button,a,select,summary{cursor:pointer}button{border:0}a{color:var(--accent-ink)}button:disabled{cursor:not-allowed;opacity:.5}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h2{font-size:var(--h2)}h3{font-size:var(--body)}svg.icon{display:block;flex:none;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.phone-content{overflow:hidden}.app{height:100%;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr)}.sidebar{background:var(--nav);color:#dce7f5;display:flex;flex-direction:column;gap:var(--s5);padding:var(--s5) var(--s4);min-height:0}.brand{display:flex;align-items:center;gap:var(--s3);padding:var(--s2);color:white;text-decoration:none}.brand-logo{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:10px;background:var(--accent);font-size:24px;font-weight:750;line-height:1}.brand strong{display:block;font-size:18px;letter-spacing:-.5px}.brand small{display:block;color:#9eb0c6;font-size:11px;letter-spacing:2px}.nav-section{font-size:11px;color:#8a9bb2;padding:var(--s2) var(--s3);letter-spacing:1px}.side-links{display:grid;gap:var(--s2)}.nav-link{display:flex;align-items:center;gap:var(--s3);padding:var(--s3);min-height:44px;color:#b3c1d4;background:transparent;text-decoration:none;border-radius:var(--radius-sm);font-size:14px}.nav-link.active{background:var(--nav-selected);color:#fff;font-weight:650}.nav-link.active .icon{color:#7fb3ff}.side-bottom{margin-top:auto;display:grid;gap:var(--s4)}.team-note{border:1px solid #304057;border-radius:var(--radius-sm);padding:var(--s3);font-size:12px;color:#b3c1d4}.team-note strong{display:block;color:#fff;margin-bottom:var(--s1)}.profile-link{border-top:1px solid #304057;padding-top:var(--s4);display:flex;gap:var(--s3);color:#fff;text-decoration:none;align-items:center}.profile-link small{color:#9eb0c6;font-size:12px}.avatar{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:50%;background:#e7effc;color:#315781;font-size:12px;font-weight:650}.sidebar .avatar{background:#30445e;color:#fff}.workspace{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding:0 var(--s6);border-bottom:1px solid var(--border);background:var(--surface)}.breadcrumb{display:flex;align-items:center;gap:var(--s3);color:var(--muted);font-size:14px}.breadcrumb strong{color:var(--text);font-weight:500}.top-actions{display:flex;align-items:center;gap:var(--s4)}.enterprise{font-size:12px;color:var(--muted);padding-right:var(--s4);border-right:1px solid var(--border)}.content{overflow-y:auto;overscroll-behavior:contain;padding:var(--s6);min-width:0;min-height:0}.page{max-width:1440px;margin:0 auto}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s5);margin-bottom:var(--s5)}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--accent-ink);font-weight:650;margin-bottom:var(--s2)}h1{font-size:clamp(24px,2.4vw,var(--title));line-height:1.35;letter-spacing:-1px}.subtitle{color:var(--muted);font-size:14px;margin-top:var(--s2)}.muted{color:var(--muted)}.small{font-size:var(--label)}.micro{font-size:var(--small)}.actions{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);min-height:44px;padding:var(--s2) var(--s4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);text-decoration:none;font-size:14px;font-weight:550;white-space:nowrap;color:var(--text)}.button.primary{background:var(--accent);border-color:var(--accent);color:#fff}.button.danger{color:var(--danger);border-color:#edbbbb}.button.quiet{background:transparent;border-color:transparent;color:var(--accent-ink)}.icon-button{display:grid;place-items:center;min-width:44px;min-height:44px;background:transparent;border-radius:var(--radius-sm)}.text-link{display:inline-flex;align-items:center;gap:var(--s2);min-height:44px;background:transparent;color:var(--accent-ink);text-decoration:none;font-size:14px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:0}.panel-pad{padding:var(--s5)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding:var(--s5);border-bottom:1px solid var(--border)}.panel-head p{font-size:12px;color:var(--muted);margin-top:var(--s1)}.section{margin-top:var(--s5)}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s4);margin-bottom:var(--s5)}.stat-card{padding:var(--s5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.stat-top{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:14px}.stat-symbol{display:grid;place-items:center;width:32px;height:32px;background:var(--accent-soft);color:var(--accent-ink);border-radius:var(--radius-sm)}.stat-number{display:block;font-size:clamp(28px,2.8vw,40px);font-weight:650;letter-spacing:-1.5px;line-height:1.4;margin:var(--s2) 0;white-space:nowrap;font-variant-numeric:tabular-nums}.stat-number small{font-size:12px;letter-spacing:0;color:var(--muted);font-weight:400;margin-left:var(--s2)}.stat-foot{font-size:12px;color:var(--muted)}.positive{color:var(--success)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:var(--s5)}.segmented{display:flex;border:1px solid var(--border);padding:var(--s1);border-radius:var(--radius-sm);gap:var(--s1)}.segmented button{min-height:32px;padding:var(--s1) var(--s3);font-size:12px;background:transparent;border-radius:4px;color:var(--muted)}.segmented button.active{background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.chart-wrap{padding:var(--s5);padding-top:var(--s4)}.chart-summary{display:flex;align-items:center;gap:var(--s4);font-size:12px;margin-bottom:var(--s4)}.legend{display:inline-flex;align-items:center;gap:var(--s2)}.dot{display:block;width:8px;height:8px;border-radius:50%;background:var(--accent)}.dot.light{background:#a9c8f5}.chart{width:100%;height:auto;display:block;aspect-ratio:650/208}.chart text{font-family:var(--font);font-size:12px;fill:var(--muted)}.chart line{stroke:#e9edf2;stroke-dasharray:4 4}.distribution{padding:var(--s5);display:grid;gap:var(--s4)}.distribution-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s5);margin-top:var(--s5);align-items:start}.distribution-row{display:grid;grid-template-columns:104px minmax(0,1fr) 32px;gap:var(--s3);align-items:center;font-size:12px}.bar-track{height:8px;background:var(--surface-2);border-radius:4px}.bar{height:100%;width:var(--bar-width);background:var(--bar-color,var(--accent));border-radius:4px;min-width:2px}.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s4)}.quick{display:flex;align-items:center;gap:var(--s3);padding:var(--s4);color:var(--text);text-decoration:none;min-height:88px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.quick .icon-wrap{display:grid;place-items:center;flex:none;width:40px;height:40px;background:var(--accent-soft);color:var(--accent-ink);border-radius:var(--radius-sm)}.quick strong{font-size:14px}.quick small{font-size:12px;color:var(--muted)}.quick>.icon{margin-left:auto;color:#8b98a8;width:16px}.badge{display:inline-flex;align-items:center;gap:6px;padding:var(--s1) var(--s2);border-radius:4px;font-size:12px;line-height:1.5;white-space:nowrap;background:var(--surface-2);color:var(--muted)}.badge.blue{background:var(--accent-soft);color:var(--accent-ink)}.badge.green{background:var(--success-soft);color:var(--success)}.badge.amber{background:var(--warning-soft);color:var(--warning)}.badge.red{background:var(--danger-soft);color:var(--danger)}.status-dot{width:5px;height:5px;border-radius:50%;background:currentColor}.data-table{width:100%;border-collapse:collapse;text-align:left;font-size:14px;table-layout:fixed}.data-table th{padding:var(--s3) var(--s4);background:#f8fafc;color:var(--muted);font-weight:500;font-size:12px;border-bottom:1px solid var(--border)}.data-table td{padding:var(--s4);border-bottom:1px solid #edf0f4;vertical-align:middle;overflow-wrap:anywhere}.data-table tr:last-child td{border-bottom:0}.data-table .person{display:flex;align-items:center;gap:var(--s3);color:var(--text);text-decoration:none}.person strong{font-size:14px;font-weight:600}.person small{font-size:12px;color:var(--muted)}.data-table input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.name-cell{width:25%}.table-footer{padding:var(--s3) var(--s5);border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted);gap:var(--s3)}.pagination{display:flex;align-items:center;gap:var(--s2)}.page-num{display:grid;place-items:center;min-width:36px;min-height:36px;background:var(--accent-soft);color:var(--accent-ink);border-radius:4px}.toolbar{padding:var(--s4) var(--s5);display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3);border-bottom:1px solid var(--border)}.search{display:flex;align-items:center;gap:var(--s2);flex:1;min-width:180px;max-width:360px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 var(--s3);background:var(--surface)}.search .icon{color:var(--muted);width:18px}.search input{width:100%;min-width:0;border:0;background:transparent;min-height:42px;font-size:14px;outline-offset:0}.chips{display:flex;gap:var(--s2);flex-wrap:wrap}.chip{display:flex;align-items:center;gap:var(--s2);min-height:36px;padding:var(--s1) var(--s3);border:1px solid var(--border);background:var(--surface);border-radius:6px;font-size:12px}.chip.active{background:var(--accent-soft);border-color:#9bbff3;color:var(--accent-ink)}.filter-summary{padding:var(--s3) var(--s5);background:#f8fafc;border-bottom:1px solid var(--border)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s5)}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:grid;gap:var(--s2);min-width:0}.field label{font-size:14px;font-weight:500}.field input,.field select,.field textarea{display:block;width:100%;min-height:44px;padding:var(--s2) var(--s3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-size:14px}.field textarea{min-height:100px;resize:none;overflow:hidden}.field .field-label{font-size:14px;font-weight:500}.field input[readonly]{background:var(--surface-2);color:var(--muted)}.field.full{grid-column:1/-1}.field-error{color:var(--danger);font-size:12px}.field [aria-invalid=true]{border-color:var(--danger)}.required{color:var(--danger)}.form-section{padding:var(--s5);margin-bottom:var(--s4)}.form-section h2{margin-bottom:var(--s5)}.form-actions{display:flex;justify-content:flex-end;gap:var(--s3);padding:var(--s4) 0}.notice{background:var(--accent-soft);color:#25476f;padding:var(--s4);border-radius:var(--radius-sm);font-size:14px;line-height:1.7;margin-bottom:var(--s5)}.notice.warn{background:var(--warning-soft);color:#744500}.notice.error{background:var(--danger-soft);color:var(--danger)}.check-label{display:flex;align-items:center;gap:var(--s2);min-height:44px;font-size:14px}.check-label input{accent-color:var(--accent);width:16px;height:16px}.tag-checks{display:flex;flex-wrap:wrap;gap:var(--s2)}.tag-checks label{display:flex;align-items:center;gap:var(--s2);border:1px solid var(--border);border-radius:6px;padding:var(--s2) var(--s3);font-size:14px}.tag-checks label:has(input:checked){background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink)}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s5);align-items:start}.detail-hero{padding:var(--s5);display:flex;align-items:center;gap:var(--s4);margin-bottom:var(--s5)}.detail-hero .avatar{width:64px;height:64px;font-size:24px;border-radius:var(--radius)}.detail-hero h2{font-size:24px}.detail-hero .actions{margin-left:auto}.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s5)}.info-item{display:grid;gap:var(--s2);min-width:0}.info-item dt{font-size:12px;color:var(--muted)}.info-item dd{margin:0;font-size:14px;overflow-wrap:anywhere;white-space:pre-wrap}.timeline{display:grid;gap:var(--s5);margin:0;padding:0;list-style:none}.timeline li{display:grid;grid-template-columns:12px minmax(0,1fr);gap:var(--s3)}.timeline-mark{display:block;width:8px;height:8px;border:2px solid var(--accent);border-radius:50%;margin-top:8px}.timeline strong{display:block;font-size:14px}.timeline p,.timeline time{display:block;font-size:12px;color:var(--muted);margin-top:var(--s1)}.empty{padding:48px var(--s5);text-align:center;color:var(--muted)}.empty .icon{margin:0 auto var(--s4);width:32px;height:32px;color:var(--accent)}.empty h2{color:var(--text);margin-bottom:var(--s2)}.empty p{font-size:14px;margin-bottom:var(--s4)}.bottom-nav{display:none}.dialog-host{position:absolute;inset:0;z-index:12;display:grid;place-items:center;padding:var(--s5);background:rgba(12,22,38,.4);isolation:isolate}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:min(640px,100%);max-height:100%;overflow:auto;box-shadow:var(--shadow);animation:enter var(--enter) ease-out}.modal.wide{width:min(800px,100%)}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding:var(--s4) var(--s5);border-bottom:1px solid var(--border)}.modal-body{padding:var(--s5)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--s3);padding:var(--s4) var(--s5);border-top:1px solid var(--border)}.toast{position:absolute;bottom:48px;left:50%;transform:translateX(-50%);z-index:30;width:max-content;max-width:calc(100% - 32px);padding:var(--s3) var(--s5);background:#172a42;color:white;border-radius:var(--radius-sm);box-shadow:var(--shadow);font-size:14px;overflow-wrap:anywhere}.upload-zone{display:grid;place-items:center;text-align:center;padding:var(--s6);border:1px dashed #a7bad2;background:#f8faff;border-radius:var(--radius);gap:var(--s3)}.upload-zone input{max-width:100%;font-size:14px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s3)}.photo-grid img{border-radius:var(--radius-sm)}.upload-preview{display:block;max-width:240px;margin:var(--s4) auto}.upload-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.photo-previews{display:contents}.upload-thumb{position:relative;aspect-ratio:1;background:var(--surface-2);border-radius:10px;overflow:hidden}.upload-thumb img{display:block;width:100%;height:100%;object-fit:contain}.thumb-remove{position:absolute;top:6px;right:6px;display:grid;place-items:center;width:28px;height:28px;padding:0;color:#fff;background:rgba(23,32,42,.8);border-radius:50%}.thumb-remove .icon{width:15px;height:15px}.field .upload-box{position:relative;display:grid;place-items:center;gap:4px;aspect-ratio:1;padding:var(--s2);border:1px dashed #a7bad2;border-radius:10px;background:var(--surface-2);color:var(--muted);font-size:12px;font-weight:400;line-height:1.5;text-align:center;cursor:pointer}.field .upload-box .icon{margin:0 auto}.field .upload-box input{position:absolute;width:1px;height:1px;opacity:0}@media(min-width:768px){.upload-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.progress{display:block;width:100%;height:6px;accent-color:var(--accent);margin-top:var(--s3)}.tabs{display:flex;gap:var(--s5);border-bottom:1px solid var(--border);margin-bottom:var(--s5);overflow-x:auto}.tab{display:flex;align-items:center;min-height:48px;padding:var(--s2) 0;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:14px;white-space:nowrap;text-decoration:none}.tab.active{color:var(--accent-ink);border-bottom-color:var(--accent)}.settings-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:var(--s5)}.settings-menu{display:grid;gap:var(--s2);align-content:start}.settings-menu button{text-align:left;justify-content:flex-start}.account{padding:var(--s5);display:flex;align-items:center;gap:var(--s4);margin-bottom:var(--s5)}.account .avatar{width:64px;height:64px;font-size:24px}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4);margin-bottom:var(--s5)}.step{display:flex;align-items:center;gap:var(--s2);padding:var(--s3);border-bottom:2px solid var(--border);font-size:14px;color:var(--muted)}.step.active{border-color:var(--accent);color:var(--accent-ink)}.step span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--surface-2);font-size:12px}.step.active span{background:var(--accent-soft)}.analysis-bars{display:grid;gap:var(--s5)}.analysis-bar{display:grid;grid-template-columns:72px minmax(0,1fr) 32px;gap:var(--s3);align-items:center;font-size:14px}.analysis-bar .bar-track{height:20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover){.button:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.button.primary:hover{background:#0959ce;color:white}.nav-link:hover{background:var(--nav-selected);color:white}.quick:hover{border-color:var(--accent);background:var(--accent-soft)}.data-table tbody tr:hover{background:var(--surface-2)}.text-link:hover{text-decoration:underline}.icon-button:hover{background:var(--surface-2)}.chip:hover{border-color:var(--accent)}.tab:hover{color:var(--accent-ink)}.field .upload-box:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.thumb-remove:hover{background:rgba(15,26,38,.95);color:#fff}}
@media(min-width:768px){body{display:block;padding:0;background:var(--bg)}.phone-frame{width:100%;height:100dvh;padding:0;border-radius:0;background:none;box-shadow:none;zoom:1}.phone-screen{width:100%;height:100%;border-radius:0;box-shadow:none}.phone-content{padding:0}.hardware-button,.camera-dot,.status-bar,.gesture-indicator,.phone-frame::before,.phone-frame::after{display:none}}
@media(min-width:1440px){.content{padding:32px 40px}.dashboard-grid{grid-template-columns:minmax(0,1.8fr) minmax(320px,1fr)}}
@media(min-width:768px) and (max-width:1023px){:root{--sidebar:192px}.content,.topbar{padding:var(--s5)}.dashboard-grid,.detail-grid{grid-template-columns:1fr}.distribution-grid{grid-template-columns:minmax(0,1fr)}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.enterprise{display:none}.brand{gap:var(--s2);padding:0}.brand strong{font-size:16px}.data-table .optional{display:none}.name-cell{width:32%}.form-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.app{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.topbar{height:56px;padding:0 var(--s4)}.breadcrumb{font-size:12px}.breadcrumb>span:first-child,.breadcrumb>.icon,.enterprise,.top-actions>.avatar{display:none}.content{padding:var(--s4)}.top-actions{gap:var(--s1)}.page-head{flex-wrap:wrap;gap:var(--s4)}h1{font-size:24px}.eyebrow{font-size:10px}.subtitle{font-size:12px}.page-head>.actions{width:100%}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}.stat-card{padding:var(--s4)}.stat-number{font-size:32px}.stat-top{font-size:12px}.stat-symbol{width:24px;height:24px}.stat-symbol .icon{width:16px;height:16px}.stat-foot{font-size:11px}.dashboard-grid,.detail-grid{grid-template-columns:minmax(0,1fr);gap:var(--s4)}.distribution-grid{grid-template-columns:minmax(0,1fr);gap:var(--s4);margin-top:var(--s4)}.panel-head,.panel-pad,.chart-wrap,.distribution{padding:var(--s4)}.panel-head h2{font-size:16px}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}.quick{padding:var(--s3);gap:var(--s2);min-height:80px}.quick .icon-wrap{width:32px;height:32px}.quick>.icon{display:none}.quick strong{font-size:14px}.quick small{font-size:10px}.data-table,.data-table tbody{display:block}.data-table thead{display:none}.data-table tr{display:grid;grid-template-columns:1fr 1fr;padding:var(--s4);gap:var(--s3);border-bottom:1px solid var(--border);position:relative}.data-table td{display:block;padding:0;border:0;font-size:12px}.data-table .name-cell{grid-column:1/-1;width:auto}.data-table td[data-label]::before{content:attr(data-label);display:block;font-size:11px;color:var(--muted);margin-bottom:var(--s1)}.data-table .optional{display:none}.data-table .person{padding-right:var(--s5)}.table-footer{padding:var(--s3) var(--s4);flex-wrap:wrap}.toolbar{padding:var(--s4);gap:var(--s2)}.search{max-width:none;flex-basis:100%}.toolbar>.chips{flex:1}.bottom-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--border);padding:var(--s2);background:var(--surface);gap:var(--s2)}.bottom-nav a{display:grid;justify-items:center;align-content:center;gap:var(--s1);min-height:48px;color:var(--muted);text-decoration:none;font-size:10px;border-radius:var(--radius-sm)}.bottom-nav a.active{color:var(--accent-ink);background:var(--accent-soft)}.form-grid,.form-grid.three,.info-grid{grid-template-columns:minmax(0,1fr)}.form-section{padding:var(--s4)}.detail-hero{padding:var(--s4);flex-wrap:wrap}.detail-hero .actions{margin:0;width:100%}.detail-hero h2{font-size:20px}.dialog-host{padding:calc(var(--phone-safe-top) + 8px) var(--s3) calc(var(--phone-safe-bottom) + 8px);align-items:end}.modal{max-height:100%;border-radius:var(--radius)}.modal-header,.modal-body,.modal-footer{padding:var(--s4)}.modal-footer .button{flex:1}.settings-grid{grid-template-columns:1fr}.settings-menu{display:flex;overflow-x:auto}.settings-menu .button{flex:none}.steps{gap:var(--s2)}.step{padding:var(--s2) 0;font-size:12px}.toast{bottom:112px}.section{margin-top:var(--s4)}.distribution-row{grid-template-columns:104px minmax(0,1fr) 24px}.analysis-filter .form-grid{grid-template-columns:1fr 1fr}.topbar .badge{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* POS-inspired settings and account hierarchy. */
.section-title{font-size:var(--h2);letter-spacing:-.01em}.settings-hub,.profile-menu{overflow:hidden}.settings-hub-item,.profile-menu-item{display:flex;align-items:center;gap:var(--s4);min-height:76px;padding:var(--s4) var(--s5);border-bottom:1px solid var(--border);color:var(--text);text-decoration:none;background:var(--surface)}.settings-hub-item:last-child,.profile-menu-item:last-child{border-bottom:0}.settings-hub-item .icon-wrap,.profile-menu-item .icon-wrap{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent-ink)}.settings-hub-item>.icon,.profile-menu-item>.icon{width:18px;height:18px;color:#7a8796}.settings-hub-item strong,.profile-menu-item strong{font-size:15px}.settings-hub-item small,.profile-menu-item small{color:var(--muted);font-size:12px}.settings-detail{overflow:hidden}.account-detail{padding:var(--s5)}.account-hero{display:flex;align-items:center;gap:var(--s4);padding-bottom:var(--s5);margin-bottom:var(--s5);border-bottom:1px solid var(--border)}.account-hero .avatar{width:64px;height:64px;border-radius:var(--radius);font-size:24px}.account-hero .badge{margin-left:auto}.account-info{margin:0}.preference-list{overflow:hidden}.preference-row{display:flex;align-items:center;gap:var(--s5);min-height:76px;padding:var(--s4) var(--s5);border-bottom:1px solid var(--border)}.preference-row:last-child{border-bottom:0}.preference-row small{color:var(--muted);font-size:12px;line-height:1.5}.preference-row .segmented{flex:none}.profile-menu .quick{border:0;border-radius:0;min-height:76px}.profile-menu .quick+.quick{border-top:1px solid var(--border)}:root[data-density=compact]{--s5:16px;--s6:24px}.bottom-nav a[aria-current="page"]{font-weight:650}
@media(hover:hover){.settings-hub-item:hover,.profile-menu-item:hover{background:var(--accent-soft)}.settings-hub-item:hover>.icon,.profile-menu-item:hover>.icon{color:var(--accent-ink)}}
@media(max-width:767px){.topbar{display:none}.workspace{grid-template-rows:minmax(0,1fr) auto}.content{padding:var(--s4);padding-bottom:calc(var(--s4) + env(safe-area-inset-bottom,0px))}.page-head{margin-bottom:var(--s5)}.page-head>.actions{display:flex}.page-head>.actions .button{flex:1}.page-head>.actions:empty{display:none}.settings-hub-item,.profile-menu-item{min-height:72px;padding:var(--s3) var(--s4)}.settings-hub-item .icon-wrap,.profile-menu-item .icon-wrap{width:40px;height:40px}.profile-menu{display:block}.profile-menu .quick{display:flex;min-height:72px;padding:var(--s3) var(--s4)}.profile-menu .quick>.icon{display:block;margin-left:auto}.profile-menu .quick small{font-size:12px}.account{padding:var(--s4);margin-bottom:var(--s4)}.account-detail{padding:var(--s4)}.account-hero{padding-bottom:var(--s4);margin-bottom:var(--s4)}.preference-row{align-items:flex-start;flex-direction:column;gap:var(--s3);padding:var(--s4)}.preference-row .segmented{width:100%}.preference-row .segmented button{flex:1;min-height:40px}.settings-detail .data-table tr{grid-template-columns:auto minmax(0,1fr)}.settings-detail .data-table td.dict-index{color:var(--muted);font-variant-numeric:tabular-nums}.settings-detail .data-table td.dict-name{font-size:15px;font-weight:650}.settings-detail .data-table td:last-child{grid-column:1/-1}.settings-detail .actions .button{flex:1}.bottom-nav{padding-bottom:calc(var(--s2) + env(safe-area-inset-bottom,0px))}}
.workspace{grid-template-rows:minmax(0,1fr) auto}

/* Members and permissions: explicit filters, ownership and row actions. */
.member-filters{display:flex;align-items:end;gap:var(--s4);padding:var(--s4) var(--s5);margin-bottom:var(--s4)}
.member-filter-fields{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(148px,1fr) minmax(148px,1fr);gap:var(--s3);flex:1;min-width:0}
.member-filter-actions{display:flex;gap:var(--s2);flex:none}
.member-list{overflow:hidden}
.member-table .name-cell{width:20%}
.member-table .member-action-head{width:340px}
.member-actions{display:flex;align-items:center;justify-content:flex-start;gap:var(--s2);flex-wrap:wrap}
.member-actions .button{min-height:44px;padding-inline:var(--s3)}

@media(min-width:768px) and (max-width:1100px){.member-filters{align-items:stretch;flex-direction:column}.member-filter-actions{justify-content:flex-end}.member-table .member-action-head{width:224px}}
@media(max-width:767px){.member-filters{display:grid;padding:var(--s4)}.member-filter-fields{grid-template-columns:minmax(0,1fr)}.member-filter-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.member-filter-actions .button{width:100%}.member-table tr{grid-template-columns:repeat(2,minmax(0,1fr))}.member-table .member-action-cell{grid-column:1/-1}.member-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s2)}.member-actions .button{width:100%}}

/* Member handover terminal: staged transfer page replacing the old modal. */
.transfer-layout{display:grid;gap:var(--s5)}
.transfer-step{overflow:hidden}
.transfer-step-head{display:flex;align-items:flex-start;gap:var(--s3);padding:var(--s5);border-bottom:1px solid var(--border)}
.transfer-step-head h2{font-size:var(--h2)}
.transfer-step-head p{font-size:12px;color:var(--muted);margin-top:var(--s1)}
.step-chip{display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;background:var(--accent-soft);color:var(--accent-ink);font-size:12px;font-weight:650}
.transfer-scope-tag{margin-left:auto;display:flex;flex:none}
.transfer-source-card{display:flex;align-items:center;gap:var(--s4);padding:var(--s5);flex-wrap:wrap}
.transfer-source-card .avatar{width:56px;height:56px;font-size:20px;border-radius:var(--radius)}
.transfer-source-stats{display:flex;gap:var(--s6);margin-left:auto}
.transfer-source-stats div{text-align:right}
.transfer-source-stats strong{display:block;font-size:22px;line-height:1.3;font-variant-numeric:tabular-nums;letter-spacing:-.5px}
.transfer-source-stats span{font-size:12px;color:var(--muted)}
.transfer-source-note{padding:0 var(--s5) var(--s5);font-size:12px;color:var(--muted);line-height:1.7}
.transfer-filter{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(140px,.7fr) auto;gap:var(--s3);padding:var(--s4) var(--s5);border-bottom:1px solid var(--border)}
.transfer-filter .actions{display:flex;align-items:end;gap:var(--s2)}
.receiver-table .select-cell{width:120px;text-align:right}
.transfer-confirm{padding:var(--s5)}
.transfer-confirm .form-actions{margin:var(--s5) 0 0;padding:0}
.transfer-confirm .notice{margin:0}
.transfer-confirm .notice.error+.check-label{margin-top:var(--s4)}
.transfer-selection-card{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);margin-bottom:var(--s4);border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent-soft)}
.transfer-selection-card .avatar{width:44px;height:44px;font-size:14px;background:var(--surface);color:var(--accent-ink)}
.transfer-selection-copy{display:grid;gap:2px;min-width:0;flex:1}
.transfer-selection-copy strong{font-size:15px}
.transfer-selection-copy small{font-size:12px;color:var(--muted)}
.transfer-selection-card .button.quiet{margin-left:auto;flex:none}
.transfer-selection-empty{padding:var(--s5) var(--s4);margin-bottom:var(--s4);border:1px dashed var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--muted);font-size:13px;text-align:center}

@media(min-width:768px) and (max-width:1100px){.transfer-filter{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.transfer-filter .actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:767px){.transfer-step-head,.transfer-source-card,.transfer-confirm{padding:var(--s4)}.transfer-filter{grid-template-columns:minmax(0,1fr);padding:var(--s4)}.transfer-scope-tag{margin-left:0}.transfer-source-stats{margin-left:0;width:100%;justify-content:flex-start;gap:var(--s6)}.transfer-source-stats div{text-align:left}.transfer-confirm .form-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.transfer-confirm .form-actions .button{width:100%}}

/* Customer list: collapsible filter card, full-width search, clickable rows. */
.customer-toolbar .search{max-width:none}
.toolbar-actions{display:flex;align-items:center;gap:var(--s2);flex:none}
.toolbar-actions .filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 var(--s1);border:1px solid var(--accent);border-radius:9px;background:var(--accent-soft);color:var(--accent-ink);font-size:11px;line-height:1;font-variant-numeric:tabular-nums}
.filter-card{display:grid;gap:var(--s4);padding:var(--s4) var(--s5);background:#f8fafc;border-bottom:1px solid var(--border)}
.filter-card[hidden]{display:none}
.filter-presets{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap}
.filter-label{font-size:14px;font-weight:500;color:var(--muted)}
.filter-preset{display:inline-flex;align-items:center;min-height:36px;padding:var(--s1) var(--s3);border:1px solid var(--border);border-radius:6px;background:var(--surface);font-size:12px}
.filter-preset.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink);font-weight:550}
.filter-card .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4) var(--s5)}
.filter-card-note{margin:0}
.data-table .row-link{cursor:pointer}
.data-table tbody tr.row-link:focus-within{outline:2px solid var(--accent);outline-offset:-2px}
:root[data-theme=dark] .filter-card{background:var(--surface-2)}
@media(hover:hover){.filter-preset:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.data-table tbody tr.row-link:hover{background:var(--accent-soft)}}
@media(min-width:768px) and (max-width:1100px){.filter-card .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.customer-toolbar{padding:var(--s4);gap:var(--s2)}.toolbar-actions{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s2)}.toolbar-actions .button{width:100%;padding-inline:var(--s2)}.filter-card{padding:var(--s4)}.filter-card .form-grid{grid-template-columns:minmax(0,1fr)}.filter-presets{gap:var(--s2)}}
.form-section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);margin-bottom:var(--s5);flex-wrap:wrap}
.form-section-head h2{margin:0}
.scan-card-trigger{flex:none}
.scan-card-trigger .icon{color:var(--accent-ink)}
.scan-strip{display:flex;align-items:center;gap:var(--s3);padding:var(--s3);margin-bottom:var(--s5);background:var(--accent-soft);border:1px solid #c7dbf7;border-radius:var(--radius-sm);color:#25476f;font-size:13px;line-height:1.5}
.scan-strip img{flex:none;width:64px;height:40px;object-fit:contain;background:#fff;border:1px solid #c7dbf7;border-radius:6px}
.scan-strip .od-field{flex:1;min-width:0}
.scan-strip strong{font-size:13px}
.scan-strip small{color:#3d5f8a;font-size:12px}
.scan-strip .progress{flex:none;width:120px;margin:0}
.scan-strip .icon-button{flex:none;min-width:36px;min-height:36px;color:#25476f}
.scan-strip .icon-button:hover{background:#cfe0f8;color:#172a42}
.tag-select{position:relative}
.tag-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);width:100%;min-height:44px;padding:var(--s2) var(--s3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-size:14px;color:var(--text);text-align:left}
.tag-select-trigger .icon{flex:none;width:18px;height:18px;color:var(--muted);transform:rotate(90deg);transition:transform .15s ease}
.tag-select-trigger:hover{border-color:#9bbff3;background:#f8faff}
.tag-select.open .tag-select-trigger{border-color:var(--accent);background:var(--surface)}
.tag-select.open .tag-select-trigger .icon{transform:rotate(-90deg)}
.tag-menu{position:absolute;z-index:9;left:0;right:0;top:calc(100% + 6px);max-height:300px;overflow-y:auto;padding:var(--s2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);display:grid;gap:2px;align-content:start}
.tag-option{display:flex;align-items:center;gap:var(--s3);min-height:44px;padding:var(--s2) var(--s3);border-radius:6px;font-size:14px;font-weight:400;cursor:pointer}
.tag-option:hover{background:var(--surface-2)}
.tag-option input{flex:none;width:16px;height:16px;accent-color:var(--accent);cursor:pointer}
.tag-option:has(input:checked){background:var(--accent-soft);color:var(--accent-ink)}
.tag-menu-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);margin-top:var(--s1);padding:var(--s2) var(--s3) var(--s1);border-top:1px solid var(--border)}
.tag-menu-foot .button{min-height:36px;padding:var(--s1) var(--s3)}
.tag-chosen{display:flex;flex-wrap:wrap;gap:var(--s2)}
.tag-chip{display:inline-flex;align-items:center;gap:var(--s1);padding:var(--s1) var(--s2) var(--s1) var(--s3);background:var(--accent-soft);color:var(--accent-ink);border-radius:6px;font-size:13px;line-height:1.5;max-width:100%;overflow-wrap:anywhere}
.chip-x{display:grid;place-items:center;flex:none;width:22px;height:22px;padding:0;border-radius:4px;background:transparent;color:var(--accent-ink)}
.chip-x .icon{width:13px;height:13px}
.chip-x:hover{background:#cfe0f8;color:#173a66}
@media(max-width:767px){.scan-strip{flex-wrap:wrap}.scan-strip img{width:56px;height:36px}.scan-strip .progress{width:100%}.form-section-head{gap:var(--s3)}.form-section-head .scan-card-trigger{width:100%;justify-content:center}}

/* ——— 工作台 2.1 · 裸分区（去整体卡片） ——— */
.wb-col{display:flex;flex-direction:column;gap:var(--s6);min-width:0}
.dashboard-grid.stacked{grid-template-columns:minmax(0,1fr);gap:var(--s6);margin-top:var(--s6)}
.wb-section{margin-bottom:var(--s6)}
.wb-section:last-of-type{margin-bottom:0}
.wb-head{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s2) var(--s3);margin-bottom:var(--s3)}
.wb-title{font-size:var(--h2);font-weight:650;letter-spacing:-.01em}
.wb-hint{color:var(--muted);font-size:var(--small)}
.wb-head-side{display:flex;align-items:center;gap:var(--s2);margin-left:auto}
.wb-head-side .text-link{min-height:22px;font-size:var(--small)}
.tool-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s3)}
.tool-row{display:flex;align-items:center;gap:14px;min-height:84px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);text-decoration:none}
.tool-row .icon-wrap{display:grid;place-items:center;flex:none;width:42px;height:42px;background:var(--accent-soft);color:var(--accent-ink);border-radius:10px}
.tool-row>.icon{flex:none;width:18px;height:18px;color:var(--muted)}
.tool-row strong{font-size:15px}
.tool-row small{color:var(--muted);font-size:var(--small)}
.tile-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s3)}
.tile{display:flex;align-items:center;gap:14px;min-height:84px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);text-decoration:none;text-align:left}
.tile .icon-wrap{display:grid;place-items:center;flex:none;width:42px;height:42px;background:var(--accent-soft);color:var(--accent-ink);border-radius:10px}
.tile strong{font-size:15px}
.tile small{color:var(--muted);font-size:var(--small)}
.empty.compact{padding:var(--s5);text-align:center;color:var(--muted)}
.empty.compact h2{font-size:var(--body)}
.empty.compact p{font-size:var(--small);margin-bottom:0}
@media(hover:hover){.tile:hover{border-color:var(--accent);background:var(--accent-soft)}.tool-row:hover{border-color:var(--accent);background:var(--accent-soft)}.tool-row:hover>.icon{color:var(--accent-ink)}}
@media(max-width:767px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.wb-section{margin-bottom:var(--s5)}.dashboard-grid.stacked{gap:var(--s5);margin-top:var(--s5)}.tile,.tool-row{min-height:80px;padding:12px 14px}}
@media(min-width:1024px){.tile-grid,.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* 待办中心 · 信息流 */
.panel-flow{overflow:hidden}
.message-item{display:grid;grid-template-columns:52px minmax(0,1fr) auto auto;align-items:center;gap:var(--s3);padding:15px 18px;border-bottom:1px solid var(--border);color:var(--text);text-decoration:none}
.message-item:last-of-type{border-bottom:0}
.message-kind{min-height:28px;padding:3px 7px;border-radius:7px;display:grid;place-items:center;font-size:12px;font-weight:700;white-space:nowrap}
.message-kind.approval{color:var(--warning);background:var(--warning-soft)}
.message-kind.system{color:var(--success);background:var(--success-soft)}
.activity-copy{min-width:0}
.activity-copy strong{display:block;font-size:14px}
.msg-meta{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted);font-size:12px;margin-top:2px}
.msg-status{display:inline-flex;align-items:center;gap:6px;width:max-content;min-height:28px;padding:3px 9px;border-radius:7px;font-size:12px;font-weight:650;white-space:nowrap}
.msg-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.msg-status.warning{color:var(--warning);background:var(--warning-soft)}
.msg-status.success{color:var(--success);background:var(--success-soft)}
.msg-status.danger{color:var(--danger);background:var(--danger-soft)}
.msg-status.neutral{color:var(--muted);background:var(--surface-2)}
.message-item .actions{justify-self:end}
@media(hover:hover){.message-item:hover{background:var(--surface-2)}}
.message-item.row-link{cursor:pointer}
.message-item.row-link:focus-within{outline:2px solid var(--accent);outline-offset:-2px}
.activity-copy strong a{color:inherit;text-decoration:none}
@media(max-width:767px){.message-item{grid-template-columns:46px minmax(0,1fr);padding:var(--s4);row-gap:var(--s2)}.message-item .msg-status{grid-column:2;justify-self:start}.message-item .actions{grid-column:2;justify-self:start;margin:0;width:100%}.message-item .actions .button{flex:1;justify-content:center}}

.section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);margin-bottom:var(--s4)}
.tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:6px;background:var(--surface-2);color:var(--muted);font-size:12px;font-weight:500;white-space:nowrap}
.status{display:inline-flex;align-items:center;gap:6px;width:max-content;min-height:28px;padding:3px 9px;border-radius:7px;font-size:12px;font-weight:650;white-space:nowrap}
.status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.status.success{color:var(--success);background:var(--success-soft)}
.status.warning{color:var(--warning);background:var(--warning-soft)}
.status.danger{color:var(--danger);background:var(--danger-soft)}
.task-panel{overflow:hidden}
.export-config{padding:var(--s5)}
.task-list{display:block}
button.task-row{width:100%;padding:15px 18px;border:0;border-bottom:1px solid var(--border);border-radius:0;background:var(--surface);display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:var(--s3);text-align:left;cursor:pointer}
button.task-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.task-list button.task-row:last-child{border-bottom:0}
.file-icon{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:8px;background:var(--success-soft);color:var(--success)}
.task-copy{min-width:0}
.task-copy strong,.task-copy>span{display:block}
.task-copy strong{font-size:14px}
.task-copy>span{color:var(--muted);font-size:12px}
.task-progress{display:block;height:5px;margin-top:7px;border-radius:3px;background:var(--surface-2);overflow:hidden}
.task-progress span{display:block;width:52%;height:100%;background:var(--accent);animation:task-pulse 1.2s ease-in-out infinite alternate}
@keyframes task-pulse{to{width:82%}}
.task-row-chevron{display:grid;place-items:center;color:var(--muted);transition:color .18s ease}
.task-footer{min-height:64px;margin:0;padding:var(--s3) var(--s5);border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:var(--s4)}
.page-summary{color:var(--muted);font-size:13px}
.page-button{min-width:38px;min-height:38px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:13px;cursor:pointer}
.page-button[aria-current="page"]{border-color:var(--accent);background:var(--accent);color:#fff;font-weight:700}
.page-button:disabled{opacity:.45;cursor:not-allowed}
.data-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s5);align-items:start}
.task-detail-hint{margin:0;color:var(--muted);font-size:13px}
.task-progress-wrap{margin-top:var(--s4)}
.task-progress-wrap .task-detail-hint{margin-bottom:var(--s3)}
.task-result-files{display:grid;gap:var(--s3)}
.task-result-file{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--s3);padding:var(--s3);border:1px solid var(--border);border-radius:10px}
.task-result-copy{min-width:0}
.task-result-copy strong,.task-result-copy span{display:block}
.task-result-copy strong{font-size:14px;overflow-wrap:anywhere}
.task-result-copy span{color:var(--muted);font-size:12px}
.text-button{display:inline-flex;align-items:center;gap:var(--s1);min-height:44px;padding:0 var(--s1);border:0;background:transparent;color:var(--accent-ink);font-size:14px;font-weight:650;white-space:nowrap;cursor:pointer}
.task-result-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3);margin-top:var(--s4)}
@media(hover:hover){button.task-row:hover{background:var(--surface-2)}button.task-row:hover .task-row-chevron{color:var(--accent)}.text-button:hover{text-decoration:underline}.page-button:hover:not(:disabled):not([aria-current="page"]){border-color:var(--accent);color:var(--accent-ink)}}
@media(max-width:767px){.export-config{padding:var(--s4)}button.task-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;padding:var(--s4)}button.task-row>.status{grid-column:2;margin-top:var(--s2)}button.task-row>.task-row-chevron{grid-column:3;grid-row:1;align-self:center}.task-footer{margin:0;padding:var(--s3) var(--s4);align-items:flex-start;flex-direction:column}.pagination{flex-wrap:wrap}.page-button{min-width:44px;min-height:44px}.data-layout{gap:var(--s4)}}

/* 客户分析拆分：侧栏子菜单、整体分析筛选与三列统计 */
.nav-item{display:grid;gap:2px}
.nav-link.parent-active{background:var(--nav-selected);color:#fff;font-weight:650}
.nav-sub{display:grid;gap:2px;margin-left:22px;padding-left:var(--s2);border-left:1px solid #22314a}
.nav-sublink{display:flex;align-items:center;min-height:44px;padding:var(--s2) var(--s3);color:#b3c1d4;border-radius:var(--radius-sm);font-size:14px;text-decoration:none}
.nav-sublink.active{background:var(--nav-selected);color:#fff;font-weight:650}
@media(hover:hover){.nav-sublink:hover{background:var(--nav-selected);color:#fff}}
.stats.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.overview-filter{display:grid;grid-template-columns:minmax(180px,260px) minmax(0,1fr);gap:var(--s3) var(--s4);align-items:end;padding:var(--s4) var(--s5);margin-bottom:var(--s6)}
.overview-filter-hint{align-self:center;margin:0}
@media(max-width:767px){.stats.three{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}.overview-filter{grid-template-columns:minmax(0,1fr);gap:var(--s2);padding:var(--s4)}}

/* 基础资料配置列表：桌面端序号列宽度与数值样式 */
.settings-detail .index-col{width:64px}
.settings-detail .data-table td.dict-index{color:var(--muted);font-variant-numeric:tabular-nums}
