:root{color-scheme:light;--dyq-plane-1: #eef4fb;--dyq-plane-2: #f7fbff;--dyq-card: #ffffff;--dyq-card-2: #f6f9fd;--dyq-line: #e2ebf4;--dyq-grid: #eef3f8;--dyq-tag-bg: #f2f6fa;--dyq-ink: #0f2233;--dyq-ink-2: #4a6076;--dyq-ink-3: #8ba0b4;--dyq-primary: #2a78d6;--dyq-primary-soft: #eaf2fd;--dyq-blue-l: #7db1ee;--dyq-blue-xl: #d9e8fb;--dyq-error: #d0342c;--dyq-error-bg: #fbefee;--dyq-error-border: #f7d8d5;--dyq-warning: #e09a19;--dyq-warning-bg: #fdf8ef;--dyq-warning-border: #f6e3bf;--dyq-warning-ink: #af7814;--dyq-success: #0b8f62;--dyq-success-bg: #eefaf4;--dyq-success-border: #c7ecdc;--dyq-viz-blue: #2a78d6;--dyq-viz-cyan: #0ea5b7;--dyq-viz-green: #12a97a;--dyq-viz-amber: #f0a92b;--dyq-viz-orange: #ee7a3c;--dyq-viz-red: #e04b4b;--dyq-viz-violet: #6b6ae0;--dyq-seq-1: #dbeafe;--dyq-seq-2: #a9cdf6;--dyq-seq-3: #6ba7ea;--dyq-seq-4: #3a7fd5;--dyq-seq-5: #1f5aa8;--dyq-sider-top: #0f4d97;--dyq-sider-bottom: #0a2c5c;--dyq-sider-selected: #1f6fd9;--dyq-sider-line: rgba(255, 255, 255, .12);--dyq-radius: 8px;--dyq-radius-lg: 14px;--dyq-shadow: 0 1px 2px rgba(20, 60, 110, .05), 0 10px 26px rgba(20, 60, 110, .06)}.ops-row-danger>td{background:#fdf4f3}.ops-row-danger:hover>td{background:#fbeceb!important}html,body,#root{height:100%;margin:0}body{font-family:system-ui,-apple-system,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;-webkit-font-smoothing:antialiased;background:linear-gradient(180deg,var(--dyq-plane-2) 0%,var(--dyq-plane-1) 260px,var(--dyq-plane-1) 100%);color:var(--dyq-ink)}.app-footer{flex:0 0 auto;padding:8px clamp(12px,1.5vw,32px);border-top:1px solid var(--dyq-line);background:#ffffffb8;color:var(--dyq-ink-3);font-size:12px;line-height:18px;text-align:center}.ant-statistic-content,.num,td.num{font-variant-numeric:tabular-nums}.ops-empty{color:var(--dyq-ink-3)}.opportunity-detail-summary{width:100%;max-width:720px;box-sizing:border-box;overflow:hidden;border:1px solid var(--dyq-line);border-radius:12px;background:var(--dyq-card);box-shadow:0 2px 10px #143c6e0a}.opportunity-detail-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 16px;background:linear-gradient(180deg,var(--dyq-card),var(--dyq-plane-2))}.opportunity-detail-summary-title.ant-typography{margin:0;font-size:16px;line-height:24px}.opportunity-detail-summary-subtitle{display:block;margin-top:2px;font-size:12px}.opportunity-detail-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border-top:1px solid var(--dyq-line);background:var(--dyq-line)}.opportunity-detail-field{min-width:0;padding:14px 16px;background:var(--dyq-card)}.opportunity-detail-field.is-wide{grid-column:1 / -1}.opportunity-detail-field-label{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:5px;color:var(--dyq-ink-3);font-size:12px;line-height:18px}.opportunity-detail-field-hint{font-size:11px}.opportunity-detail-field-action{display:inline-flex;min-height:24px}.opportunity-detail-field-content{min-width:0;color:var(--dyq-ink);font-size:14px;line-height:1.65;overflow-wrap:anywhere}.opportunity-intent-option.ant-btn{min-width:50px;font-weight:600;transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.opportunity-intent-option.is-selected{box-shadow:0 0 0 2px #1677ff1f}.opportunity-intent-option.intent-high.is-selected{border-color:#cf1322;background:#cf1322;color:#fff}.opportunity-intent-option.intent-medium.is-selected{border-color:#d46b08;background:#d46b08;color:#fff}.opportunity-intent-option.intent-low.is-selected{border-color:#1677ff;background:#1677ff;color:#fff}.opportunity-intent-option.intent-none.is-selected{border-color:var(--dyq-ink-3);background:var(--dyq-grid);color:var(--dyq-ink-2)}.opportunity-intent-help{margin-top:5px;color:var(--dyq-ink-3);font-size:11px}.opportunity-activity-timeline{padding-top:8px}.opportunity-activity-timeline .ant-timeline-item-last{padding-bottom:0}.opportunity-activity-item{min-width:0;padding-bottom:4px}.opportunity-activity-meta{margin-top:4px;color:var(--dyq-ink-3);font-size:12px}.opportunity-activity-note{margin-top:3px;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:640px){.opportunity-detail-fields{grid-template-columns:1fr}.opportunity-detail-field{grid-column:1 / -1}.opportunity-detail-summary-head{flex-wrap:wrap}}.kanban-flow{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr) 40px minmax(0,1fr);gap:0;align-items:stretch}.kanban-flow-arrow{display:flex;align-items:center;justify-content:center;color:var(--dyq-primary)}.kanban-flow-turn{color:var(--dyq-primary)}.kanban-flow-turn{grid-column:1 / -1;display:flex;align-items:center;height:34px}.kanban-flow-turn[data-side=right]{justify-content:flex-end;padding-right:calc(16.66% - 13px)}.kanban-flow-turn[data-side=left]{justify-content:flex-start;padding-left:calc(16.66% - 13px)}.kanban-flow-row-pad{height:10px;grid-column:1 / -1}.kanban-board{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;align-items:flex-start}.kanban-column.is-over{border-color:var(--dyq-primary);background:var(--dyq-primary-soft)}.kanban-column.is-valid-target{border-style:dashed;border-color:var(--dyq-blue-l)}.kanban-column-header{padding:9px 12px;border-bottom:1px solid var(--dyq-line);display:flex;align-items:center;justify-content:space-between;gap:8px;font-weight:600;font-size:15px}.kanban-column-body{padding:8px;display:flex;flex-direction:column;gap:8px;flex:1}.kanban-card{background:var(--dyq-card);border:1px solid var(--dyq-line);border-radius:10px;padding:9px 11px;box-shadow:0 1px 2px #143c6e0d;cursor:grab;touch-action:none}.kanban-card.is-dragging{opacity:.4}.kanban-drag-overlay{pointer-events:none;overflow:hidden;cursor:grabbing;opacity:.98;box-shadow:0 8px 20px #143c6e2e}.kanban-drag-overlay.is-row-card{padding:7px 34px 7px 9px}.kanban-drag-overlay.is-row-card .kanban-card-title{margin-bottom:0;overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.kanban-drag-overlay.is-row-card .kanban-card-body{margin:0}.kanban-drag-overlay.is-row-card .kanban-card-meta{display:none}.kanban-drag-overlay.is-row-card .kanban-dot{top:12px;right:8px}.kanban-card.over-threshold{border-left:3px solid var(--dyq-error)}.kanban-card-title{font-weight:500;margin-bottom:4px;word-break:break-all}.kanban-card-meta{font-size:12px;color:var(--dyq-ink-3);display:flex;justify-content:space-between;align-items:center;gap:8px}.kanban-card-meta .dwell-over{color:var(--dyq-error);font-weight:600}@media(max-width:767px){.kanban-board{flex-direction:column;overflow-x:visible}.kanban-column{flex:1 1 auto;width:100%}.kanban-card{cursor:default}}.kanban-card-body{font-size:12px;color:var(--dyq-ink-2);margin-bottom:6px;display:flex;flex-direction:column;gap:3px}.kanban-card-body .ant-tag{margin-inline-end:4px;line-height:18px;font-size:11px}.kanban-card-line{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wb-top3{background:var(--dyq-warning-bg);border:1px solid var(--dyq-warning-border);border-radius:10px}.wb-top3 .ant-list-item{border-block-end-color:var(--dyq-warning-border)!important}.sidebar-page{max-width:480px;margin:0 auto;padding:0 0 20px;min-height:100vh;background:radial-gradient(120% 60% at 50% 0%,#dbeafe 0%,#eaf3fe 42%,var(--dyq-plane-1) 100%)}.sb-head{padding:18px 18px 22px;background:radial-gradient(90% 120% at 80% -10%,rgba(122,168,240,.35),transparent 60%),linear-gradient(160deg,#cfe3fb,#e6f0fd 55%,#eef4fb00);border-radius:0 0 20px 20px}.sb-head h1{margin:0;font-size:21px;font-weight:700;letter-spacing:.5px;color:#123a6b}.sb-head p{margin:3px 0 0;font-size:12.5px;color:#4a6f9e}.sb-ctx{margin-top:14px;background:#ffffffd1;border:1px solid rgba(255,255,255,.9);border-radius:12px;padding:9px 12px;font-size:12.5px;color:var(--dyq-ink-2);box-shadow:0 4px 14px #143c6e14}.sidebar-page .ant-card{margin:12px 14px 0;border-radius:16px;border-color:transparent;box-shadow:0 4px 16px #143c6e12}.sb-title{display:inline-flex;align-items:center;gap:8px;font-size:14.5px;font-weight:600}.sb-client{margin:-10px 14px 0;background:var(--dyq-card);border-radius:16px;padding:14px;box-shadow:0 6px 18px #143c6e1a;position:relative;z-index:1}.sb-tabs{margin:10px 14px 0;background:var(--dyq-card);border-radius:16px;padding:4px 12px 10px;box-shadow:0 4px 16px #143c6e12}.sb-tabs .ant-tabs-nav{margin-bottom:8px}.sb-tabs .ant-tabs-tab{padding:8px 4px;font-size:13.5px}.sb-tabs .ant-tabs-tab+.ant-tabs-tab{margin-left:18px}.sb-title i{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,#4c9af0,#2a78d6);color:#fff;font-size:11px;font-style:normal;flex:0 0 20px}.targets-cell .ant-input-number{width:100%}.kanban-column.has-stage{background:var(--dyq-card)}.kanban-column.has-stage .kanban-column-header{border-bottom-color:var(--stage-solid);border-bottom-width:2px}.substep-chip{display:inline-block;padding:0 6px;border-radius:6px;background:var(--dyq-primary-soft);color:var(--dyq-primary);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.substep-bar{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--dyq-ink-2);padding:4px 6px;margin:2px -6px 4px;border-radius:8px}.substep-bar.clickable{cursor:pointer}.substep-bar.clickable:hover{background:var(--dyq-primary-soft);color:var(--dyq-primary)}.substep-next{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.substep-go{margin-inline-start:6px;color:var(--dyq-primary);font-weight:600}.ant-layout-sider-children{display:flex;flex-direction:column;height:100%;min-height:0}.sider-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.25) transparent}.sider-scroll::-webkit-scrollbar{width:6px}.sider-scroll::-webkit-scrollbar-thumb{background:#ffffff38;border-radius:3px}.sider-scroll::-webkit-scrollbar-track{background:transparent}.ant-layout-sider-collapsed .sider-scroll{overflow-x:hidden}.sider-collapse{flex:0 0 40px;height:40px;border:0;border-top:1px solid var(--dyq-sider-line);background:transparent;color:#ffffffb3;cursor:pointer;font-size:14px}.sider-collapse:hover{background:#ffffff14;color:#fff}.kanban-flow .kanban-column{flex:1 1 auto;min-height:132px;min-width:0}.kanban-flow .kanban-card,.kanban-flow .kanban-card *{min-width:0;overflow-wrap:anywhere}.kanban-flow .kanban-column-body{max-height:268px;overflow-y:auto}.kanban-col-no{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;background:var(--stage-grad, linear-gradient(135deg, #2ec98d, #0b8f62));color:#fff;font-size:13px;font-weight:700;line-height:1;flex:0 0 26px;box-shadow:0 2px 5px #143c6e33}.kanban-col-meta{font-size:11px;color:var(--dyq-ink-3);font-weight:400;white-space:nowrap}.kanban-col-over{color:var(--dyq-error);font-weight:600;white-space:nowrap}.kanban-card-meta>span:first-child{white-space:nowrap}.parking-lot{margin-top:16px;background:var(--dyq-card);border:1px solid var(--dyq-line);border-radius:var(--dyq-radius-lg);padding:12px 14px 14px}.parking-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.parking-due-badge{font-size:11px;padding:1px 8px;border-radius:9px;background:var(--dyq-error-bg);color:var(--dyq-error);border:1px solid var(--dyq-error-border);white-space:nowrap}.parking-empty{font-size:12px;color:var(--dyq-ink-3);line-height:1.7}.parking-cards{display:flex;flex-wrap:wrap;gap:8px}.parking-card{display:flex;align-items:baseline;gap:8px;padding:6px 10px;border:1px solid var(--dyq-line);border-radius:var(--dyq-radius);background:var(--dyq-tag-bg);cursor:pointer;transition:border-color .15s,background .15s}.parking-card:hover{border-color:var(--dyq-primary);background:var(--dyq-primary-soft)}.parking-card-name{font-size:13px;color:var(--dyq-ink)}.parking-card-when{font-size:11px;color:var(--dyq-ink-3);white-space:nowrap}.parking-card.is-due{background:var(--dyq-error-bg);border-color:var(--dyq-error-border)}.parking-card.is-due .parking-card-when{color:var(--dyq-error);font-weight:600}.kanban-card-park{margin-top:6px;opacity:0;transition:opacity .15s}.kanban-card:hover .kanban-card-park{opacity:1}@media(hover:none){.kanban-card-park{opacity:1}}.ops-card-title:before{content:"";display:inline-block;width:3px;height:14px;border-radius:2px;background:var(--title-bar, var(--dyq-primary));margin-right:8px;vertical-align:-2px}.ant-segmented{background:transparent;padding:0}.ant-segmented .ant-segmented-group{gap:6px}.ant-segmented .ant-segmented-item{background:var(--dyq-card);border:1px solid var(--dyq-line);border-radius:8px;padding-inline:6px;box-shadow:none;transition:background .15s,border-color .15s,color .15s}.ant-segmented .ant-segmented-item:hover:not(.ant-segmented-item-selected){border-color:var(--dyq-blue-l);color:var(--dyq-primary)}.ant-segmented .ant-segmented-item-selected,.ant-segmented .ant-segmented-item-selected:hover{background:var(--dyq-primary);border-color:var(--dyq-primary);box-shadow:0 2px 5px #2a78d647}.ant-segmented .ant-segmented-item-selected .ant-segmented-item-label{color:#fff;font-weight:600}.ant-segmented .ant-segmented-thumb{display:none}.act{margin-top:12px;padding:10px;border-radius:12px;background:var(--dyq-primary-soft);border:1px solid var(--dyq-line)}.act-title{font-size:12.5px;font-weight:600;color:var(--dyq-text-2);margin-bottom:7px}.act .ant-input{border-radius:8px;font-size:13px;background:var(--dyq-card)}.act-hint{margin-top:6px;font-size:11px;color:var(--dyq-text-3);line-height:1.5}.act-btns{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}.act-out{margin-top:10px;background:var(--dyq-card);border-radius:10px;padding:10px 12px;border:1px solid var(--dyq-line)}.act-out-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.act-body{font-size:13px;line-height:1.75;white-space:pre-wrap}.act-unclear{margin-top:9px;padding:8px 10px;border-radius:8px;background:var(--dyq-warn-soft, #fff8e6);font-size:11.5px;line-height:1.7;color:var(--dyq-text-2)}.act-unclear-t{font-weight:600;margin-bottom:2px}.act-diff{padding:7px 0;border-bottom:1px solid var(--dyq-line)}.act-diff:last-child{border-bottom:0}.act-diff-k{font-size:12.5px;font-weight:600}.act-diff-v{margin-left:24px;margin-top:2px;font-size:12.5px;line-height:1.6}.act-diff-old{color:var(--dyq-text-3);text-decoration:line-through}.act-diff-arrow{margin:0 6px;color:var(--dyq-text-3)}.act-diff-new{color:var(--dyq-primary);font-weight:600}.sb-hero{margin:10px 12px;border-radius:14px;overflow:hidden;background:linear-gradient(160deg,#2f6bb3,#24568f);box-shadow:0 4px 14px #24568f33}.sb-hero-top{display:flex;align-items:center;gap:10px;padding:13px 13px 0}.sb-hero-id{min-width:0;flex:1}.sb-hero-name{font-size:18px;font-weight:700;line-height:1.25;color:#fff}.sb-hero-sub{margin-top:3px;font-size:12px;line-height:1.5;color:#ffffffd1}.sb-hero-sub b{color:#fff;font-weight:600}.sb-hero-link{flex:none;font-size:12px;color:#ffffffe6;white-space:nowrap}.sb-hero-link:hover{color:#fff}.sb-hero-rel{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:10px 14px 0}.sb-hero-rel-t{font-size:11.5px;color:#ffffffb3}.sb-hero-chip{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;background:#ffffff24;color:#ffffffeb;border:1px solid rgba(255,255,255,.2)}.sb-hero-chip:hover{background:#ffffff3d;color:#fff}.sb-hero-chip.is-on{background:#fff;color:var(--dyq-primary);font-weight:600;border-color:#fff}.sb-hero-bind{font-size:11.5px;color:#ffffffbf;text-decoration:underline}.sb-hero-bind:hover{color:#fff}.sb-hero-warn{margin:10px 14px 0;padding:7px 10px;border-radius:8px;font-size:12px;line-height:1.5;background:#ffffff29;color:#fff;border-left:3px solid #ffd25e}.act.act-bare{margin:0;padding:0;background:none;border:0}.sb-f{margin-top:12px}.sb-f-l{display:flex;align-items:center;gap:6px;margin-bottom:4px;font-size:13.5px;font-weight:700;color:var(--dyq-ink)}.sb-f-l:before{content:"";flex:none;width:3.5px;height:14px;border-radius:2px;background:var(--f-accent, var(--dyq-ink-3))}.sb-f-v{font-size:13.5px;line-height:1.6;color:var(--dyq-ink)}.sb-f-warn{background:var(--dyq-warning-bg);color:var(--dyq-warning-ink);border-radius:8px;padding:6px 9px}.sb-hero-ava{flex:none;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f0b429;color:#5a3d02;font-size:19px;font-weight:700}.sb-hero-name{font-size:17px;font-weight:700;line-height:1.3;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-hero-code{font-size:11.5px;font-weight:400;color:#ffffffb3}.sb-hero-tags{display:flex;flex-wrap:wrap;gap:6px;padding:9px 13px 0}.sb-hero-tag{padding:2px 10px;border-radius:999px;font-size:11.5px;line-height:1.6;background:#ffffffeb;color:#24568f;font-weight:500}.sb-hero-tag.is-src{background:#ffffff29;color:#fff;border:1px solid rgba(255,255,255,.34)}.sb-hero-rel{padding:9px 13px 13px;display:flex;flex-wrap:wrap;align-items:center;gap:7px}.sb-hero-fu{margin-top:10px;height:38px;border-radius:10px;font-size:13.5px;font-weight:600}.sb-tabs{margin:0 12px 12px}.sb-tabs .ant-tabs-nav{margin:0 0 12px;padding:4px;border-radius:11px;background:var(--dyq-primary-soft)}.sb-tabs .ant-tabs-nav:before{display:none}.sb-tabs .ant-tabs-nav-list{width:100%;gap:0}.sb-tabs .ant-tabs-ink-bar{display:none}.sb-tabs .ant-tabs-tab{flex:1;justify-content:center;margin:0!important;padding:7px 4px;border-radius:8px;transition:background .15s,color .15s}.sb-tabs .ant-tabs-tab+.ant-tabs-tab{margin-left:0!important}.sb-tabs .ant-tabs-tab .ant-tabs-tab-btn{font-size:13.5px;font-weight:500;color:var(--dyq-ink-3)}.sb-tabs .ant-tabs-tab-active{background:var(--dyq-primary);box-shadow:0 2px 6px #24568f47}.sb-tabs .ant-tabs-tab-active .ant-tabs-tab-btn{color:#fff!important;font-weight:700}.sb-ctx-thin{margin:10px 14px;font-size:11.5px;line-height:1.6;color:var(--dyq-ink-3)}.sb-hero-ct{padding:9px 13px 0;display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12.5px}.sb-hero-ct-n{color:#fff;font-weight:600}.sb-hero-ct-tel{display:inline-flex;align-items:center;gap:4px;padding:1px 9px;border-radius:999px;background:#fffffff0;color:#24568f;font-weight:600;letter-spacing:.2px}.sb-hero-ct-tel:hover{background:#fff;color:#1d4676}.sb-hero-ct-no{color:#fff9;font-size:11.5px}.sb-hero-ct-wx{padding:1px 8px;border-radius:999px;font-size:11px;background:#ffffff29;color:#ffffffe6;border:1px solid rgba(255,255,255,.28)}.sb-silent{font-size:12.5px;font-weight:600;color:var(--dyq-ink-2)}.sb-silent.is-bad{color:var(--dyq-error)}.pool-flt-t{font-size:12.5px;font-weight:600;color:var(--dyq-ink);margin-right:2px}.pool-g-A{border-color:#17293a!important;color:#17293a!important;font-weight:700}.pool-g-B{border-color:#3c556c!important;color:#3c556c!important}.pool-g-C{border-color:#6b8093!important;color:#6b8093!important}.pool-g-D{border-color:#9aabbb!important;color:#9aabbb!important}.pool-g-A.pool-on{background:#17293a!important;color:#fff!important}.pool-g-B.pool-on{background:#3c556c!important;color:#fff!important}.pool-g-C.pool-on{background:#6b8093!important;color:#fff!important}.pool-g-D.pool-on{background:#9aabbb!important;color:#fff!important}.sb-hero-ct-more{font-size:11px;color:#ffffffb3}.sb-do{margin:0 12px 14px;padding:13px;border-radius:14px;background:var(--dyq-card);border:1px solid var(--dyq-line)}.sb-do-t{font-size:13.5px;font-weight:700;color:var(--dyq-ink);margin-bottom:9px;display:flex;align-items:center;gap:6px}.sb-do-t:before{content:"";width:3px;height:14px;border-radius:2px;background:var(--dyq-primary)}.sb-do-empty{font-size:12px;color:var(--dyq-ink-3);line-height:1.6;padding:4px 0 8px}.sb-do-fu{margin-top:10px;height:38px;border-radius:10px;font-size:13.5px;font-weight:600}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;margin:11px 13px 0;padding-top:11px;border-top:1px solid rgba(255,255,255,.18)}.hero-cell{min-width:0}.hero-cell-l{font-size:11px;color:#ffffffad;line-height:1.5}.hero-cell-v{display:flex;align-items:center;gap:5px;margin-top:1px;cursor:pointer;font-size:13.5px;color:#fff;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero-cell-v:hover{color:#ffe9a8}.hero-cell-v b{font-size:15px}.hero-cell-e{flex:none;font-size:10.5px;color:#ffffff80}.hero-cell-v:hover .hero-cell-e{color:#ffffffe6}.hero-tel{color:#fff;text-decoration:underline;text-underline-offset:2px}.hero-tel:hover{color:#ffe9a8}.hero-pop{width:200px}.hero-pop-hint{margin-top:6px;font-size:11px;line-height:1.5;color:var(--dyq-ink-3)}.fu-fold{margin-top:12px;border-top:1px solid var(--dyq-line);padding-top:10px}.fu-fold-h{display:flex;align-items:center;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none}.fu-fold-i{font-size:10px;color:var(--dyq-ink-3);transition:transform .18s}.fu-fold-i.is-open{transform:rotate(180deg)}.fu-fold-t{font-size:13px;font-weight:700;color:var(--dyq-ink)}.fu-fold-n{font-size:11.5px;color:var(--dyq-ink-3)}.fu-fold-peek{margin-top:5px;padding-left:16px;font-size:12.5px;line-height:1.6;color:var(--dyq-ink-2);cursor:pointer;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.fu-fold-peek:hover{color:var(--dyq-ink)}.fu-fold-d{color:var(--dyq-ink-3);margin-right:6px}.fu-fold-body{margin-top:9px;max-height:340px;overflow-y:auto;padding-right:4px}.pool-hint{margin-bottom:10px;padding:7px 11px;border-radius:8px;font-size:12.5px;line-height:1.6;background:var(--dyq-primary-soft);color:var(--dyq-ink-2);border-left:3px solid var(--dyq-primary)}.dr-label{font-size:13px;font-weight:600;color:var(--dyq-ink);margin-bottom:5px}.dr-tip{margin-bottom:12px;padding:7px 11px;border-radius:8px;font-size:12.5px;background:var(--dyq-primary-soft);color:var(--dyq-ink-2);border-left:3px solid var(--dyq-primary)}.dr-item{margin-top:9px}.dr-item-l{font-size:12px;font-weight:600;color:var(--dyq-ink-2)}.dr-item-v{font-size:13px;line-height:1.65;color:var(--dyq-ink);white-space:pre-wrap}.sb-do-visit{margin-top:8px;height:36px;border-radius:10px;font-size:13px}.dr-auto-h{font-size:11.5px;color:var(--dyq-ink-3);margin-bottom:10px}.dr-auto-empty{font-size:12.5px;color:var(--dyq-ink-3);line-height:1.7;padding:6px 0}.dr-sec{margin-bottom:14px}.dr-sec:last-child{margin-bottom:0}.dr-sec-t{font-size:13px;font-weight:700;color:var(--dyq-ink);margin-bottom:6px;display:flex;align-items:center;gap:6px}.dr-sec-t:before{content:"";width:3px;height:13px;border-radius:2px;background:var(--dyq-primary)}.dr-sec-empty{font-size:12px;color:var(--dyq-ink-3);line-height:1.6;padding-left:9px}.dr-row{font-size:12.5px;line-height:1.85;padding-left:9px}.dr-dim{color:var(--dyq-ink-3)}.dr-warn{color:var(--dyq-warning-ink)}.dr-over{color:var(--dyq-error);font-weight:600}.dr-fix{font-size:11.5px}.dr-opt{font-weight:400;color:var(--dyq-ink-3);font-size:11.5px}.dr-ai-row{display:flex;align-items:center;gap:8px;margin-top:7px;flex-wrap:wrap}.dr-ai-hint{font-size:11px;color:var(--dyq-ink-3);line-height:1.5}.pool-name{display:inline-flex;align-items:center;gap:5px}.pool-meta{display:flex;align-items:center;gap:4px;min-width:0;margin-top:2px;font-size:11.5px;color:var(--dyq-ink-3);white-space:nowrap}.pool-role-tag.ant-tag{margin:0;padding-inline:4px;font-size:10px;line-height:15px;border-radius:4px}.pool-business{display:inline-flex;align-items:center;gap:12px;white-space:nowrap;font-size:12.5px}.pool-business b{font-weight:700}.pool-pen{font-size:11.5px;color:var(--dyq-ink-3);cursor:pointer;opacity:0;transition:opacity .12s}.pool-name:hover .pool-pen,.ant-table-row:hover .pool-pen{opacity:1}.pool-pen:hover{color:var(--dyq-primary)}.pool-wx{font-size:11.5px;color:#07966d;max-width:158px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kanban-card{position:relative}.kanban-card.risk-stalled{border-left:4px solid var(--dyq-error)}.kanban-card.risk-watch{border-left:4px solid var(--dyq-warning)}.kanban-card.risk-ok{border-left:4px solid transparent}.kanban-dot{position:absolute;top:11px;right:11px;width:8px;height:8px;border-radius:50%}.kanban-dot.dot-stalled{background:var(--dyq-error)}.kanban-dot.dot-watch{background:var(--dyq-warning)}.kanban-dot.dot-ok{background:var(--dyq-success)}.kanban-card-title{padding-right:14px}.kanban-card-alert{font-size:12px;font-weight:600;line-height:1.45;margin:2px 0 6px;color:var(--dyq-error)}.kanban-card-alert:before{content:"⚠ "}.risk-watch .kanban-card-alert{color:var(--dyq-warning)}.opp-owner{color:var(--dyq-ink-2);font-size:12.5px}.opp-money-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.opp-money{font-size:15px;font-weight:700;color:var(--dyq-ink);letter-spacing:-.2px}.opp-intent{font-size:11.5px;color:var(--dyq-ink-2);background:var(--dyq-tag-bg);border-radius:4px;padding:1px 6px;white-space:nowrap}.opp-next{font-size:12px;color:var(--dyq-ink-2)}.opp-next:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--dyq-primary);margin-right:5px;vertical-align:middle}.kanban-col-sum{font-size:13px;font-weight:700;color:var(--dyq-ink);margin-right:8px}.opp-tally{display:inline-flex;gap:14px;font-size:12.5px;color:var(--dyq-ink-2)}.opp-tally i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.opp-tally .t-stalled i{background:var(--dyq-error)}.opp-tally .t-watch i{background:var(--dyq-warning)}.opp-tally .t-ok i{background:var(--dyq-success)}.opp-secondary-counts{font-size:12px}.opp-maint-help{margin-bottom:12px;padding:8px 10px;border-radius:8px;background:var(--dyq-primary-soft);color:var(--dyq-ink-2);font-size:12px;line-height:1.6}.opp-maint-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}.opp-maint-search{flex:1 1 260px;min-width:220px;max-width:360px}.opp-filter-label{color:var(--dyq-ink-2);font-size:12px;white-space:nowrap}.opp-filter-field{display:inline-flex;align-items:center;gap:6px}.opp-filter-select{width:140px}.opp-filter-grade{width:96px}@media(max-width:767px){.opp-maint-search{flex-basis:100%;min-width:100%;max-width:none}.opp-filter-field{flex:0 0 100%}.opp-filter-field .opp-filter-label{min-width:60px}.opp-filter-field .opp-filter-select,.opp-filter-field .opp-filter-grade{flex:1;width:auto;min-width:0}}.opp-maint-page .ant-table-wrapper{overflow:hidden;background:var(--dyq-card);border:1px solid var(--dyq-line);border-radius:10px}.opp-maint-name.ant-btn{display:block;height:auto;max-width:100%;padding:0;font-weight:600;text-align:left;white-space:normal}.opp-contact{display:flex;min-width:0;flex-direction:column;gap:2px;line-height:1.35}.opp-contact-name{overflow:hidden;color:var(--dyq-ink);font-weight:500;text-overflow:ellipsis;white-space:nowrap}.opp-contact-detail{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.pool-stage{width:100%;min-width:0}.pool-stage-current,.pool-stage-proposal{width:100%;min-width:0;border:0;border-radius:7px;font:inherit;text-align:left;display:flex;align-items:center;gap:6px;cursor:pointer;white-space:nowrap}.pool-stage-current{min-height:28px;padding:4px 7px;background:var(--dyq-primary-soft);color:var(--dyq-ink)}.pool-stage-current:hover{background:var(--dyq-blue-xl)}.pool-stage-dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--dyq-primary);box-shadow:0 0 0 3px #24568f1a}.pool-stage-name{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;font-weight:600}.pool-stage-action{flex:none;color:var(--dyq-primary);font-size:11.5px;font-weight:500}.pool-stage-proposal{min-height:24px;margin-top:2px;padding:2px 7px;background:transparent;color:var(--dyq-ink-3);font-size:11.5px}.pool-stage-proposal:hover{background:var(--dyq-plane-2);color:var(--dyq-ink-2)}.pool-stage-proposal.has-file>.anticon{color:var(--dyq-success)}.pool-stage-proposal.is-empty>.anticon{color:var(--dyq-warning-ink)}.pool-stage-proposal>span:nth-child(2){min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis}.pool-stage-current:focus-visible,.pool-stage-proposal:focus-visible{outline:2px solid var(--dyq-primary);outline-offset:1px}.opp-first{display:flex;align-items:center;gap:6px;cursor:pointer;background:var(--dyq-error-bg);border:1px solid var(--dyq-error-border);color:var(--dyq-error);font-size:13px;font-weight:600;border-radius:8px;padding:7px 12px;margin-bottom:12px}.opp-first:hover{filter:brightness(.98)}.opp-first-arrow{font-weight:700}.opp-first-sep{opacity:.45;margin:0 2px}.kanban-with-aside{display:flex;align-items:flex-start;gap:12px}.kanban-with-aside>:first-child{flex:1 1 auto;min-width:0}.kanban-aside{flex:0 0 176px}.opp-side-bins{display:flex;flex-direction:column;gap:10px}.opp-side-bin{width:100%;padding:10px;border:1px solid var(--dyq-line);border-radius:8px;background:var(--dyq-card);color:var(--dyq-ink);box-shadow:0 1px 2px #143c6e0d}.opp-side-bin-head{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600}.opp-side-bin-count{margin-left:auto;min-width:22px;padding:0 6px;border-radius:10px;background:var(--dyq-tag-bg);color:var(--dyq-ink-2);font-size:11px;line-height:18px;text-align:center}.opp-side-bin-meta{display:block;margin-top:5px;color:var(--dyq-ink-3);font-size:11px;line-height:1.5}.opp-side-list{display:flex;flex-direction:column;gap:5px;margin-top:8px}.opp-side-list>.ops-empty{padding:8px 0;text-align:center;font-size:11px}.opp-side-item{display:block;width:100%;padding:5px 7px;border:1px solid var(--dyq-line);border-radius:6px;background:var(--dyq-card);color:var(--dyq-ink-2);font:inherit;text-align:left;cursor:pointer}.opp-side-item:hover{border-color:var(--dyq-primary);color:var(--dyq-primary)}.opp-side-item:focus-visible{outline:2px solid var(--dyq-primary);outline-offset:1px}.opp-side-item>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.opp-side-item>small{display:block;margin-top:1px;color:var(--dyq-ink-3);font-size:10px}.opp-side-bin .ant-pagination{justify-content:center;margin-top:8px}@media(max-width:1180px){.kanban-with-aside{display:block}.kanban-aside{margin-top:12px}.opp-side-bins{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:575px){.opp-side-bins{grid-template-columns:1fr}}.kanban-aside .parking-cards{flex-direction:column;flex-wrap:nowrap}.kanban-aside .parking-card{width:100%}.kanban-aside .parking-head{display:block}.kanban-aside .parking-head .ant-space{flex-wrap:wrap;row-gap:2px}.kanban-row{display:grid;grid-template-columns:repeat(3,minmax(210px,1fr));gap:10px;align-items:flex-start;overflow-x:auto;padding-bottom:8px}.kanban-row>.kanban-column{min-width:0;max-height:calc(100vh - 260px);display:flex;flex-direction:column}.fulfillment-board .kanban-row{grid-template-columns:repeat(5,minmax(150px,1fr))}.kanban-row .kanban-card,.kanban-row .kanban-card *{min-width:0}.kanban-row .kanban-column-header,.kanban-row .kanban-column-header .ant-space{flex-wrap:wrap;row-gap:2px}.kanban-row .kanban-col-meta{font-size:11px}.kanban-row .kanban-column-body{overflow-y:auto}.kanban-card.risk-idle{border-left:4px solid var(--dyq-line);opacity:.72}.kanban-dot.dot-idle{background:var(--dyq-ink-3)}.risk-idle .kanban-card-alert{color:var(--dyq-ink-3);font-weight:500}.risk-idle .kanban-card-alert:before{content:"· "}.opp-tally .t-idle{color:var(--dyq-ink-3)}.opp-tally .t-idle i{background:var(--dyq-ink-3)}.kanban-row .kanban-card-title,.kanban-row .kanban-card-body .opp-next{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kanban-row .kanban-card-title{font-size:13px}.kanban-card-sub{font-size:12px;color:var(--dyq-ink-2);margin-bottom:4px}.kanban-row .kanban-card-sub{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kanban-row .opp-money{font-size:14px}.kanban-row .kanban-card-alert{font-size:11.5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.kanban-row .kanban-card{padding:8px 9px}.kanban-row .kanban-dot{top:9px;right:8px}.kanban-card.is-openable{cursor:pointer}.kanban-card.is-openable:hover{border-color:var(--dyq-primary);box-shadow:0 2px 8px #143c6e1a}.kanban-row .kanban-card{padding:7px 34px 7px 9px}.kanban-row .kanban-card-title{margin-bottom:0}.kanban-card-title-inline{display:flex;align-items:center;gap:4px;min-width:0}.kanban-card-title-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kanban-row .kanban-card-body{margin:0}.kanban-row .opp-intent{position:absolute;top:7px;right:20px;font-size:11px;padding:0 4px;line-height:16px}.kanban-row .kanban-dot{top:12px;right:8px}.kanban-row .kanban-card-meta{display:none}.park-p{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:1.5px solid var(--dyq-ink-2);border-radius:3px;font-size:11px;font-weight:700;line-height:1;color:var(--dyq-ink-2)}.kanban-trash{margin-top:12px;padding:10px;border-radius:10px;border:1px dashed var(--dyq-line);background:var(--dyq-card-2)}.kanban-trash.is-valid-target{border-color:var(--dyq-blue-l)}.kanban-trash.is-over{border-color:var(--dyq-primary);background:var(--dyq-primary-soft)}.kanban-trash-head{display:flex;align-items:center;gap:6px;cursor:pointer}.kanban-trash-icon{font-size:15px}.kanban-trash-title{font-size:13px;font-weight:600;color:var(--dyq-ink)}.kanban-trash-count{margin-left:auto;font-size:12px;color:var(--dyq-ink-2);background:var(--dyq-tag-bg);border-radius:9px;padding:0 7px;line-height:18px}.kanban-trash-hint{font-size:11px;color:var(--dyq-ink-3);margin-top:4px;line-height:1.5}.kanban-trash-list{margin-top:8px;display:flex;flex-direction:column;gap:4px}.kanban-trash-item{font-size:12px;color:var(--dyq-ink-2);background:var(--dyq-card);border:1px solid var(--dyq-line);border-radius:6px;padding:4px 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kanban-row .kanban-column-header{display:block;position:relative;padding-right:20px;min-height:46px}.kanban-col-info{color:var(--dyq-ink-3);cursor:help}.kanban-row .kanban-col-info{position:absolute;top:4px;right:2px;font-size:12px}.kanban-row .kanban-column-header>.ant-space{display:flex;flex-wrap:wrap;row-gap:1px}.opp-grade{display:inline-block;font-size:11px;line-height:16px;padding:0 5px;border-radius:4px;background:var(--dyq-tag-bg);white-space:nowrap}.opp-grade.g-A{color:#17293a;font-weight:700}.opp-grade.g-B{color:#3c556c;font-weight:600}.opp-grade.g-C{color:#6b8093}.opp-grade.g-D{color:#9aabbb}.opp-grade.g-none{color:var(--dyq-ink-3);background:transparent}.pool-name-t{font-weight:600;color:var(--dyq-ink)}.pool-row-click{cursor:pointer}.pool-row-click:hover .pool-name-t{color:var(--dyq-primary)}.pool-never{font-size:11.5px;color:var(--dyq-ink-3)}.pp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0 16px}.pp-grid .ant-form-item{margin-bottom:14px}.pp-primary-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:16px;margin-bottom:16px}.pp-primary-columns>.ant-card,.pp-company-column{min-width:0}.pp-company-column{display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px}.pp-bank-section{border-top:1px solid var(--dyq-line);padding-top:12px}.pp-bank-actions{display:flex;justify-content:flex-end;margin-bottom:8px}.pty-contacts{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.pty-contact{border:1px solid var(--dyq-line);border-radius:10px;padding:10px 12px;background:var(--dyq-card)}.pty-contact-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:6px}.pty-contact-name{font-weight:600;color:var(--dyq-ink)}.pty-contact-line{font-size:12.5px;color:var(--dyq-ink-2);line-height:1.9}.svc{font-size:12px}.svc-服务中{color:var(--dyq-ink);font-weight:600}.svc-暂停{color:var(--dyq-warning)}.svc-已流失{color:var(--dyq-error)}.svc-未开始{color:var(--dyq-ink-3)}.pp-save{padding:0 0 16px;text-align:right}.hd-pick-title{font-size:12.5px;font-weight:600;color:var(--dyq-ink);margin:10px 0 6px}.hd-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:2px 8px}.hd-pick-item{font-size:12.5px;padding:3px 4px;border-radius:5px}.hd-pick-item.on{background:var(--dyq-primary-soft)}.hd-list{display:flex;flex-direction:column;gap:10px}.hd-item{border:1px solid var(--dyq-line);border-radius:8px;padding:9px 11px}.hd-item-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12.5px}.hd-item-count{color:var(--dyq-ink-3);font-size:12px}.hd-item-docs{margin-top:6px;display:flex;flex-wrap:wrap;gap:4px 10px;font-size:12.5px;color:var(--dyq-ink-2)}.hd-doc em{font-style:normal;color:var(--dyq-ink-3)}.hd-item-foot{margin-top:5px;font-size:11.5px;color:var(--dyq-ink-3)}.hd-print-root{display:none}.hd-sheet{color:#000;font-size:13px}.hd-sheet-head{display:flex;align-items:baseline;justify-content:space-between;border-bottom:2px solid #000;padding-bottom:8px}.hd-sheet-brand{font-size:15px;font-weight:700}.hd-sheet-title{font-size:20px;font-weight:700;letter-spacing:4px}.hd-sheet-code{font-size:13px}.hd-sheet-meta,.hd-sheet-items{width:100%;border-collapse:collapse;margin-top:12px}.hd-sheet-meta th,.hd-sheet-meta td,.hd-sheet-items th,.hd-sheet-items td{border:1px solid #000;padding:5px 8px;text-align:left}.hd-sheet-meta th{width:62px;background:#f2f2f2;font-weight:600}.hd-sheet-items th{background:#f2f2f2}.hd-sheet-items tfoot td{font-weight:600;background:#fafafa}.hd-sheet-tip{margin-top:10px;font-size:12px;line-height:1.7}.hd-sheet-sign{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:22px;font-size:13px;line-height:2.1}.hd-sheet-sign-line{margin-top:14px;border-bottom:1px solid #000;width:78%}@media(max-width:767px){.pp-primary-columns{grid-template-columns:minmax(0,1fr)}.app-header .ant-btn{width:40px;height:40px}.app-content>div,.app-content .ant-tabs-content-holder,.app-content .ant-tabs-content,.app-content .ant-tabs-tabpane{min-width:0;max-width:100%}.pool-toolbar>.ant-space-item{max-width:100%}.pool-toolbar>.ant-space-item:first-child{width:100%}.pool-toolbar .ant-input-search{width:100%!important}.pool-toolbar .ant-segmented{max-width:100%}.pool-toolbar .ant-segmented-group{flex-wrap:wrap}.ant-card-head-wrapper{align-items:flex-start;flex-wrap:wrap;column-gap:8px}.ant-card-head-title{flex:1 1 180px;min-width:0;white-space:normal;overflow:visible;text-overflow:clip}.ant-card-extra{max-width:100%;margin-inline-start:0;white-space:normal}.ant-table-wrapper .ant-table-cell-fix-right,.ant-table-wrapper .ant-table-cell-fix-right-first,.ant-table-wrapper .ant-table-cell-fix-right-last{position:static!important}.ant-table-wrapper .ant-table-cell-fix-right-first:after,.ant-table-wrapper .ant-table-cell-fix-right-last:after{display:none}.ant-table-wrapper .ant-table-content,.ant-table-wrapper .ant-table-body{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--dyq-blue-l) var(--dyq-grid)}.ant-modal{top:12px;max-width:calc(100vw - 24px);padding-bottom:12px}.ant-modal-content{max-height:calc(100dvh - 24px);display:flex;flex-direction:column}.ant-modal-body{min-height:0;overflow-y:auto}.ant-drawer-content-wrapper{max-width:100vw!important}}@media(max-width:359px){.app-header-user-name{display:none}}@media print{body *{visibility:hidden}.hd-print-root,.hd-print-root *{visibility:visible}.hd-print-root{display:block;position:absolute;left:0;top:0;width:100%}.hd-sheet-items tr,.hd-sheet-sign{break-inside:avoid}}@page{size:A4;margin:14mm}
