/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}.block{display:block}.hidden{display:none}.table{display:table}.table\!{display:table!important}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#16231f;--muted:#74807b;--line:#e8ece9;--green:#087a5b;--green-dark:#075c46;--canvas:#f3f6f4}*{box-sizing:border-box}html,body{background:var(--canvas);min-height:100%;color:var(--ink);margin:0}body{font-family:Microsoft YaHei UI,PingFang SC,Noto Sans SC,Arial,sans-serif}button,input{font:inherit}button{color:inherit}.app-shell{min-height:100vh;display:flex}.sidebar{color:#c7d7d1;z-index:20;background:#0d2922;flex-direction:column;width:236px;padding:24px 16px;display:flex;position:fixed;inset:0 auto 0 0}.brand{border-bottom:1px solid #284139;align-items:center;gap:12px;padding:0 8px 24px;display:flex}.brand-mark{color:#fff;background:#21ad7d;border-radius:10px;place-items:center;width:38px;height:38px;font-size:21px;font-weight:800;display:grid;box-shadow:0 6px 16px #0003}.brand div{flex-direction:column;gap:2px;display:flex}.brand strong{color:#fff;letter-spacing:.08em;font-size:15px}.brand small{color:#83a298;letter-spacing:.16em;font-size:11px}.side-nav{flex:1;padding-top:16px;overflow-y:auto}.nav-group{margin-bottom:15px}.nav-group>p{color:#63847a;letter-spacing:.18em;margin:0 10px 6px;font-size:10px}.nav-group button{color:#a7bdb6;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:11px;width:100%;height:40px;padding:0 11px;font-size:13px;transition:all .2s;display:flex}.nav-group button:hover{color:#fff;background:#173a31}.nav-group button.active{color:#08664e;background:#e9f6f1;font-weight:700}.nav-group button>span{text-align:center;width:18px;font-size:17px}.nav-group button em{color:#fff;text-align:center;background:#db6d4b;border-radius:10px;min-width:20px;margin-left:auto;padding:2px 6px;font-size:10px;font-style:normal}.data-health{background:#14352c;border:1px solid #29483e;border-radius:10px;align-items:center;gap:10px;padding:12px;display:flex}.data-health div{flex-direction:column;gap:2px;display:flex}.data-health strong{color:#cce2da;font-size:11px}.data-health small{color:#678c80;font-size:10px}.pulse{background:#3dd59e;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #3dd59e1c}.main-area{width:calc(100% - 236px);min-width:0;margin-left:236px}.topbar{border-bottom:1px solid var(--line);z-index:10;background:#fff;justify-content:space-between;align-items:center;height:78px;padding:0 28px;display:flex;position:sticky;top:0}.topbar h1{letter-spacing:-.03em;margin:3px 0 0;font-size:20px}.eyebrow{color:#95a09c;letter-spacing:.16em;margin:0;font-size:9px;font-weight:800}.eyebrow.green{color:#188567}.top-actions{align-items:center;gap:10px;display:flex}.search{color:#86928d;background:#f8faf9;border:1px solid #dfe5e1;border-radius:9px;align-items:center;gap:9px;width:300px;height:38px;padding:0 10px;display:flex}.search input{background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:12px}.search kbd{color:#96a09c;background:#fff;border:1px solid #d9dfdc;border-radius:5px;padding:2px 5px;font-size:9px}.icon-button{cursor:pointer;background:#fff;border:1px solid #dfe5e1;border-radius:9px;width:38px;height:38px;position:relative}.icon-button i{background:#dc6f4b;border:1px solid #fff;border-radius:50%;width:6px;height:6px;position:absolute;top:8px;right:8px}.profile{cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:3px 6px;display:flex}.profile>span,.owner-avatar{color:#08735a;background:#dff2e9;border-radius:9px;place-items:center;width:32px;height:32px;font-size:12px;font-weight:800;display:inline-grid}.profile div{text-align:left;flex-direction:column;display:flex}.profile strong{font-size:11px}.profile small{color:#8b9591;margin-top:2px;font-size:9px}.workspace{max-width:1540px;margin:0 auto;padding:26px 28px 50px}.hero-row{justify-content:space-between;align-items:flex-end;gap:24px;margin:3px 0 22px;display:flex}.hero-row h2{letter-spacing:-.04em;margin:7px 0;font-size:25px}.hero-row h2 mark{color:#0d8060;background:0 0}.hero-row>div>p:last-child{color:#7b8782;margin:0;font-size:12px}.primary-button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:9px;height:40px;padding:0 17px;font-size:12px;font-weight:700;box-shadow:0 6px 16px #087a5b28}.primary-button:hover{background:var(--green-dark)}.primary-button span{margin-right:7px;font-size:17px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.metric-grid article{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:152px;padding:16px 17px;position:relative;overflow:hidden;box-shadow:0 3px 14px #17322808}.metric-head{justify-content:space-between;align-items:center;display:flex}.metric-icon{border-radius:8px;place-items:center;width:30px;height:30px;font-weight:800;display:grid}.metric-icon.teal{color:#08795b;background:#e0f3eb}.metric-icon.blue{color:#3577a9;background:#e7f0f8}.metric-icon.orange{color:#c97535;background:#fbecdf}.metric-icon.violet{color:#7160a7;background:#eeeaf7}.trend{border-radius:5px;padding:3px 6px;font-size:9px;font-weight:700}.trend.up{color:#0a8b66;background:#ecf8f3}.trend.neutral{color:#7b8782;background:#f3f5f4}.metric-grid article>strong{letter-spacing:-.04em;margin-top:12px;font-family:Arial,sans-serif;font-size:26px;display:block}.metric-grid article>strong small{margin-left:3px;font-family:inherit;font-size:12px}.metric-grid article>p{color:#7c8883;margin:4px 0 0;font-size:10px}.sparkline{width:90px;height:30px;position:absolute;bottom:17px;right:17px}.bars{justify-content:flex-end;align-items:end;gap:4px;display:flex}.bars i{background:#9ed3c1;border-radius:3px 3px 1px 1px;width:7px;display:block}.bars i:first-child{height:8px}.bars i:nth-child(2){height:13px}.bars i:nth-child(3){height:11px}.bars i:nth-child(4){height:18px}.bars i:nth-child(5){height:16px}.bars i:nth-child(6){height:24px}.bars i:nth-child(7){background:#168566;height:29px}.line{border-bottom:2px solid #5d9bc7;height:25px;transform:skewY(-7deg);box-shadow:0 10px 14px #6aa5cf18}.mini-progress{background:#f0f2f1;border-radius:4px;width:80px;height:5px;position:absolute;bottom:22px;right:17px;overflow:hidden}.mini-progress span{background:#d8894d;border-radius:4px;height:100%;display:block}.ring{background:conic-gradient(#7b68af 0 37%,#eeeaf5 37% 100%);border-radius:50%;place-items:center;width:45px;height:45px;display:grid;position:absolute;bottom:15px;right:18px}.ring:before{content:"";background:#fff;border-radius:50%;position:absolute;inset:6px}.ring span{text-align:center;color:#81788d;font-size:7px;position:relative}.content-grid{grid-template-columns:minmax(0,1.8fr) minmax(285px,.8fr);gap:14px;margin-bottom:14px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:12px;box-shadow:0 3px 14px #17322808}.panel-head{border-bottom:1px solid #edf0ee;justify-content:space-between;align-items:center;gap:14px;min-height:65px;padding:15px 17px;display:flex}.panel-head h3{margin:0;font-size:13px}.panel-head p{color:#8a9691;margin:4px 0 0;font-size:9px}.filters{background:#f1f4f2;border-radius:7px;padding:3px;display:flex}.filters button{color:#7c8883;cursor:pointer;background:0 0;border:0;border-radius:5px;padding:5px 9px;font-size:9px}.filters button.selected{color:#126f57;background:#fff;font-weight:700;box-shadow:0 1px 4px #14281f12}.task-row{border-bottom:1px solid #eff1f0;grid-template-columns:22px 35px minmax(180px,1fr) 56px 80px;align-items:center;gap:11px;min-height:78px;padding:10px 17px;transition:all .2s;display:grid}.task-row:last-child{border-bottom:0}.task-row:hover{background:#fbfcfb}.task-row.done{opacity:.48}.task-row.done .task-copy strong,.task-row.done .task-copy p{text-decoration:line-through}.check{color:#08785a;cursor:pointer;background:#fff;border:1px solid #cbd5d1;border-radius:5px;width:18px;height:18px;padding:0;font-size:11px}.priority{text-align:center;border-radius:5px;width:32px;padding:3px 0;font-size:8px;font-weight:800}.p-必做{color:#c65d43;background:#fbe8e4}.p-跟进{color:#b17a20;background:#fdf1dd}.p-机会{color:#168064;background:#e5f2ed}.task-copy strong{font-size:11px;display:block}.task-copy p{color:#4f5d58;margin:4px 0;font-size:10px}.task-copy small{color:#9aa39f;font-size:8px}.score{text-align:center}.score small{color:#a2aba7;font-size:7px;display:block}.score strong{color:#08765a;font-family:Arial,sans-serif;font-size:18px}.ghost-button,.outline-button{color:#537169;cursor:pointer;background:#fff;border:1px solid #dce5e1;border-radius:7px;padding:6px 9px;font-size:9px}.ghost-button:hover,.outline-button:hover{color:#08765a;border-color:#168064}.more{color:#9aa49f;cursor:pointer;background:0 0;border:0}.signal-item{border-bottom:1px solid #eff1f0;align-items:center;gap:10px;min-height:73px;padding:10px 15px;display:flex}.signal-icon{border-radius:8px;flex:none;place-items:center;width:31px;height:31px;font-size:10px;font-weight:800;display:grid}.signal-icon.red{color:#c65d43;background:#fbe8e4}.signal-icon.amber{color:#b17a20;background:#fdf1dd}.signal-icon.blue{color:#397cab;background:#e7f0f8}.signal-item div{flex:1;min-width:0}.signal-item strong{font-size:10px;display:block}.signal-item p{text-overflow:ellipsis;white-space:nowrap;color:#6f7c77;margin:3px 0;font-size:9px;overflow:hidden}.signal-item small{color:#a5ada9;font-size:8px;display:block}.signal-item>b{color:#15906b;align-self:flex-start;margin-top:4px;font-family:Arial,sans-serif;font-size:10px}.full-link{color:#64736d;cursor:pointer;background:#f8faf9;border:0;width:100%;padding:11px;font-size:9px}.full-link span{color:#0b7d5e;margin-left:8px}.pipeline-panel{overflow:hidden}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:760px}th{color:#8a9591;text-align:left;background:#f9fbfa;padding:9px 16px;font-size:8px;font-weight:600}td{color:#55615d;border-top:1px solid #eff1f0;padding:11px 16px;font-size:9px}td strong,td small{display:block}td strong{color:#26342f;font-size:10px}td small{color:#97a19d;margin-top:3px;font-size:8px}td>b{color:#26342f}.stage{color:#20745e;background:#eaf5f1;border-radius:5px;padding:4px 7px;font-size:8px;display:inline-block}.prob{align-items:center;gap:7px;display:flex}.prob>span{background:#edf0ef;border-radius:4px;width:55px;height:4px;overflow:hidden}.prob i{background:#40a184;height:100%;display:block}.prob b{font-family:Arial,sans-serif;font-size:9px}.owner-avatar{vertical-align:middle;border-radius:6px;width:22px;height:22px;margin-right:5px;font-size:8px}.row-link{color:#177b61;cursor:pointer;background:0 0;border:0;font-size:9px}@media (max-width:1100px){.sidebar{width:210px}.main-area{width:calc(100% - 210px);margin-left:210px}.metric-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.search{width:240px}}@media (max-width:760px){.sidebar{flex-direction:row;width:auto;height:64px;padding:8px;position:fixed;inset:auto 0 0}.brand,.data-health,.nav-group>p,.nav-group:not(:first-child){display:none}.side-nav{width:100%;padding:0;overflow:visible}.nav-group:first-child{justify-content:space-around;margin:0;display:flex}.nav-group button{flex-direction:column;justify-content:center;gap:1px;width:auto;min-width:54px;height:48px;padding:3px;font-size:8px}.nav-group button>span{font-size:15px}.nav-group button em{display:none}.main-area{width:100%;margin-left:0;padding-bottom:70px}.topbar{height:65px;padding:0 16px}.topbar .eyebrow,.profile div,.search kbd{display:none}.top-actions{gap:6px}.search{width:160px}.workspace{padding:20px 14px 32px}.hero-row{align-items:flex-start}.hero-row h2{font-size:21px}.hero-row>div>p:last-child{display:none}.primary-button{white-space:nowrap;padding:0 12px}.metric-grid{grid-template-columns:1fr 1fr;gap:10px}.metric-grid article{min-height:136px}.content-grid{gap:10px}.panel-head{flex-direction:column;align-items:flex-start}.filters{justify-content:space-between;width:100%}.task-row{grid-template-columns:20px 34px 1fr 45px}.ghost-button{display:none}.metric-grid article>strong{font-size:22px}}@media (max-width:430px){.topbar h1{font-size:17px}.search{display:none}.hero-row{flex-direction:column}.hero-row .primary-button{align-self:stretch}.metric-grid{grid-template-columns:1fr}.metric-grid article{min-height:125px}.task-row{grid-template-columns:20px 31px 1fr}.score{display:none}}.demo-badge{color:#ad7123;letter-spacing:.05em;background:#fff2de;border-radius:4px;margin-left:8px;padding:2px 5px;display:inline-block}.module-title{justify-content:space-between;align-items:flex-end;gap:24px;margin:2px 0 22px;display:flex}.module-title h2{letter-spacing:-.04em;margin:7px 0 6px;font-size:25px}.module-title>div>p:last-child{color:#7b8782;margin:0;font-size:11px}.mini-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.mini-kpis article{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:12px;min-height:90px;padding:15px;display:flex;box-shadow:0 3px 14px #17322808}.mini-kpis article>span{color:#08775a;background:#e2f3ec;border-radius:9px;flex:none;place-items:center;width:34px;height:34px;font-size:12px;font-weight:800;display:grid}.mini-kpis article>span.orange{color:#bf773d;background:#fceddf}.mini-kpis article div{min-width:0}.mini-kpis strong{letter-spacing:-.03em;font-family:Arial,sans-serif;font-size:18px;display:block}.mini-kpis p{color:#52605b;margin:2px 0;font-size:9px}.mini-kpis small{color:#99a29e;font-size:8px;display:block}.radar-search{margin-bottom:14px;padding:14px}.smart-search{background:#f9fbfa;border:1px solid #cddbd5;border-radius:9px;align-items:center;gap:10px;padding:4px 5px 4px 12px;display:flex;box-shadow:0 0 0 3px #0d806008}.smart-search>span{color:#168064}.smart-search input{color:#46534e;background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:11px}.smart-search button{color:#fff;cursor:pointer;background:#0b7a5c;border:0;border-radius:7px;padding:8px 13px;font-size:9px;font-weight:700}.filter-row{align-items:center;gap:7px;margin-top:12px;display:flex}.filter-row>span{color:#89948f;font-size:9px}.filter-row>i{flex:1}.filter-row button{color:#67746f;cursor:pointer;background:#fff;border:1px solid #e0e6e3;border-radius:6px;padding:5px 9px;font-size:8px}.filter-row button.selected{color:#0a7458;background:#e8f4ef;border-color:#168064;font-weight:700}.lead-level{border-radius:7px;place-items:center;width:25px;height:25px;margin-right:8px;font-weight:800;display:inline-grid}.level-S{color:#d8f8ec;background:#153b31}.level-A{color:#0a765a;background:#dff2e9}.score-big{color:#1a332c;font-family:Arial,sans-serif;font-size:13px}.piw{gap:4px;display:flex}.piw b{color:#597269;background:#f1f5f3;border-radius:4px;padding:3px 5px;font-size:7px}.signal-chip{color:#9b681e;background:#fff5e8;border-radius:5px;padding:4px 6px;font-size:8px;display:inline-block}.quality{align-items:center;gap:6px;display:flex}.quality>span{background:#ebefed;border-radius:3px;width:54px;height:4px;overflow:hidden}.quality i{background:#359579;height:100%;display:block}.quality b{font-family:Arial,sans-serif;font-size:8px}.empty-state{text-align:center;color:#8a9691;padding:35px;font-size:11px}.module-split{grid-template-columns:210px minmax(0,1fr);gap:14px;display:grid}.event-filter{height:max-content;padding:15px}.event-filter h3{margin:4px 5px 9px;font-size:10px}.event-filter h3:nth-of-type(2){margin-top:20px}.event-filter>button{color:#68756f;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;width:100%;padding:8px 9px;font-size:9px}.event-filter>button.selected{color:#0a7458;background:#eaf5f1;font-weight:700}.trust-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.trust-grid span{color:#66736e;border:1px solid #e9edeb;border-radius:6px;padding:7px;font-size:7px}.trust-grid b{color:#24332e;margin-top:3px;font-family:Arial,sans-serif;font-size:10px;display:block}.event-stream{gap:10px;display:grid}.event-card{padding:15px}.event-top{align-items:flex-start;gap:10px;display:flex}.event-type{border-radius:8px;place-items:center;width:34px;height:34px;font-size:9px;font-weight:800;display:grid}.type-采购{color:#bd5b43;background:#fbe7e3}.type-财政{color:#b47b25;background:#fcf0dc}.type-人员{color:#3779aa;background:#e7eff8}.type-竞对{color:#715fa6;background:#eee9f7}.event-top>div{flex:1}.event-top strong{font-size:11px;display:block}.event-top p{color:#8d9793;margin:4px 0 0;font-size:8px}.event-top em{color:#75827d;background:#f1f4f2;border-radius:5px;padding:3px 6px;font-size:7px;font-style:normal}.event-top em.high{color:#bd5e48;background:#fae9e5}.event-proof{color:#71807a;background:#f8faf9;border-radius:6px;justify-content:space-between;margin:12px 0 8px;padding:8px 10px;font-size:8px;display:flex}.event-proof b{color:#0b8362}.event-action{grid-template-columns:55px 1fr auto;align-items:center;gap:8px;display:grid}.event-action span{color:#9b7030;font-size:8px;font-weight:700}.event-action p{color:#42504b;margin:0;font-size:9px}.event-action button{color:#14785f;cursor:pointer;background:0 0;border:0;font-size:8px}.rule-banner{color:#fff;background:linear-gradient(100deg,#0d342a,#125a46);justify-content:space-between;align-items:center;margin-bottom:14px;padding:13px 16px;display:flex}.rule-banner>div{align-items:center;gap:12px;display:flex}.rule-banner>div>span{border:1px solid #ffffff3d;border-radius:50%;place-items:center;width:38px;height:38px;font-family:Arial,sans-serif;font-size:13px;display:grid}.rule-banner p{margin:0}.rule-banner strong,.rule-banner small{display:block}.rule-banner strong{font-size:10px}.rule-banner small{color:#92b9ad;margin-top:4px;font-size:8px}.rule-banner button{color:#d9ece6;cursor:pointer;background:#ffffff10;border:1px solid #ffffff2f;border-radius:7px;padding:7px 10px;font-size:8px}.tender-score{color:#08785b;font-size:15px}.dual-score{gap:4px;display:flex}.dual-score span{background:#f1f4f2;border-radius:4px;padding:3px 5px;font-size:7px}.tender-grade{border-radius:5px;padding:4px 6px;font-size:8px;font-weight:700;display:inline-block}.grade-必追{color:#bc543d;background:#f9e5e0}.grade-重点评估{color:#a97220;background:#fff0d7}.grade-归档{color:#7f8985;background:#eef1ef}.kanban{grid-template-columns:repeat(4,minmax(210px,1fr));gap:10px;padding-bottom:5px;display:grid;overflow-x:auto}.kanban-col{background:#edf2ef;border:1px solid #e3e8e5;border-radius:11px;min-height:470px;padding:10px}.kanban-col>header{grid-template-columns:auto 1fr auto;align-items:center;gap:7px;padding:2px 3px 11px;display:grid}.kanban-col>header>span{border-radius:50%;width:7px;height:7px}.kanban-col>header strong{font-size:10px}.kanban-col>header b{color:#76817d;background:#fff;border-radius:9px;place-items:center;width:18px;height:18px;font-size:8px;display:grid}.kanban-col>header em{color:#8d9793;grid-column:2/4;font-size:8px;font-style:normal}.op-card{background:#fff;border:1px solid #e5eae7;border-radius:9px;margin-bottom:9px;padding:13px;box-shadow:0 3px 8px #17322808}.card-label{color:#15775d;background:#e8f3ef;border-radius:4px;padding:3px 5px;font-size:7px}.op-card h3{margin:9px 0 4px;font-size:10px}.op-card>p{color:#7d8984;margin:0 0 14px;font-size:8px}.op-card>div{border-bottom:1px solid #edf0ee;justify-content:space-between;padding-bottom:10px;display:flex}.op-card>div strong{font-size:10px}.op-card>div small{color:#9da6a2;font-size:7px}.op-card footer{align-items:center;gap:6px;padding-top:9px;display:flex}.op-card footer>b{color:#7b8682;flex:1;font-size:7px;font-weight:500}.op-card footer button{color:#9aa39f;background:0 0;border:0}.funnel-layout{grid-template-columns:minmax(0,1.6fr) minmax(260px,.7fr);gap:14px;display:grid}.funnel-chart{padding:17px}.funnel-chart>div{color:#386357;background:linear-gradient(90deg,#d7eee5,#eef7f3);border-radius:5px;grid-template-columns:1fr 70px 90px;align-items:center;gap:8px;height:39px;margin:0 auto 4px;padding:0 12px;display:grid}.funnel-chart>div:nth-child(n+5){background:linear-gradient(90deg,#c1e4d7,#e1f2eb)}.funnel-chart span{font-size:8px}.funnel-chart strong{text-align:right;font-size:9px}.funnel-chart small{color:#769088;text-align:right;font-size:7px}.health-row{border-bottom:1px solid #edf0ee;align-items:center;gap:10px;padding:13px 15px;display:flex}.health-row>div{flex:1}.health-row strong,.health-row small{display:block}.health-row strong{font-size:9px}.health-row small{color:#8a9591;margin-top:3px;font-size:8px}.health-row button{color:#14785f;background:0 0;border:0;font-size:8px}.risk{border-radius:50%;width:8px;height:8px}.risk-高{background:#d86549;box-shadow:0 0 0 4px #d8654917}.risk-中{background:#d9a148;box-shadow:0 0 0 4px #d9a14817}.risk-低{background:#319773;box-shadow:0 0 0 4px #31977317}.visit-grid{grid-template-columns:minmax(0,1.5fr) minmax(260px,.6fr);gap:14px;display:grid}.visit-row{border-bottom:1px solid #edf0ee;grid-template-columns:48px 12px 1fr auto;align-items:center;gap:10px;min-height:79px;padding:10px 16px;display:grid}.visit-row time b,.visit-row time small{display:block}.visit-row time b{font-size:9px}.visit-row time small{color:#8f9995;margin-top:4px;font-size:8px}.route-dot{border:2px solid #1d8a6a;border-radius:50%;width:8px;height:8px;position:relative}.route-dot:after{content:"";background:#cfe1da;width:1px;height:60px;position:absolute;top:9px;left:1px}.visit-row:last-child .route-dot:after{display:none}.visit-row>div strong{font-size:10px}.visit-row>div p{color:#6b7873;margin:4px 0;font-size:8px}.visit-row>div small{color:#9ba49f;font-size:8px}.visit-row>button{color:#14785f;background:0 0;border:0;font-size:8px}.prep-item{color:#53615c;border-bottom:1px solid #edf0ee;align-items:center;gap:9px;padding:11px 14px;font-size:8px;display:flex}.prep-item>span{color:#0b795d;background:#e8f3ef;border-radius:6px;place-items:center;width:20px;height:20px;font-size:8px;display:grid}.prep-item>b{color:#46a084;margin-left:auto;font-size:7px}.risk-label{border-radius:4px;padding:3px 6px;font-size:7px}.risk-label-正常{color:#1c7c61;background:#e5f3ed}.risk-label-关注{color:#a46f22;background:#fff0db}.risk-label-逾期{color:#b95540;background:#f9e4e0}.competitor-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.competitor-card{padding:16px}.competitor-card header{align-items:center;gap:10px;display:flex}.competitor-card header>span{color:#13775e;background:#e7f2ee;border-radius:9px;place-items:center;width:34px;height:34px;font-size:13px;font-weight:800;display:grid}.competitor-card header>div{flex:1}.competitor-card h3{margin:0;font-size:11px}.competitor-card header p{color:#87928e;margin:4px 0 0;font-size:8px}.pressure{border-radius:5px;padding:3px 6px;font-size:7px}.pressure-高{color:#bd5943;background:#fae5e1}.pressure-中{color:#a97528;background:#fcefd9}.pressure-低{color:#187b60;background:#e5f3ed}.coverage{background:#ecf0ee;border-radius:4px;height:5px;margin:15px 0 12px;position:relative}.coverage>span{background:#48967e;border-radius:4px;height:100%;display:block}.coverage small{color:#82908a;margin-top:7px;font-size:8px;display:block}.competitor-card footer{background:#f8faf9;border-radius:7px;margin-top:26px;padding:10px;position:relative}.competitor-card footer strong{color:#8b6c39;font-size:8px}.competitor-card footer p{color:#45534e;margin:4px 70px 0 0;font-size:8px}.competitor-card footer button{color:#14785f;background:0 0;border:0;font-size:7px;position:absolute;bottom:9px;right:9px}.graph-layout{grid-template-columns:minmax(0,1.45fr) minmax(270px,.55fr);gap:14px;display:grid}.network-map{background:radial-gradient(circle,#edf8f3 0,#f9fbfa 45%,#fff 75%);height:430px;position:relative;overflow:hidden}.node{z-index:2;text-align:center;border-radius:50%;place-items:center;font-size:8px;font-weight:700;display:grid;position:absolute;box-shadow:0 6px 14px #17322816}.school-node{color:#fff;background:#0e765a;border:8px solid #d8eee6;width:88px;height:88px;top:38%;left:42%}.project-node{color:#336d94;background:#e8f1f8;border:5px solid #fff;width:66px;height:66px}.supplier-node{color:#986623;background:#fff0dc;border:5px solid #fff;width:72px;height:72px}.brand-node{color:#6b5b9d;background:#eee9f7;border:5px solid #fff;width:57px;height:57px}.n1{top:21%;left:13%}.n2{top:67%;left:17%}.n3{top:16%;left:68%}.n4{top:69%;left:72%}.n5{top:37%;left:84%}.n6{top:77%;left:51%}.edge{transform-origin:0;background:#8eb8a9;height:1px;position:absolute;top:47%;left:47%}.e1{width:240px;transform:rotate(201deg)}.e2{width:220px;transform:rotate(153deg)}.e3{width:210px;transform:rotate(-42deg)}.e4{width:230px;transform:rotate(40deg)}.e5{width:300px;transform:rotate(-5deg)}.e6{width:160px;transform:rotate(67deg)}.insight-block{border-bottom:1px solid #edf0ee;gap:10px;padding:14px;display:flex}.insight-block>div strong{font-size:9px}.insight-block>div p{color:#7d8985;margin:4px 0 0;font-size:8px}.strategy-box{color:#fff;background:#12392f;border-radius:8px;margin:14px;padding:13px}.strategy-box small{color:#75a99a;font-size:7px}.strategy-box p{color:#d3e6df;margin:6px 0 10px;font-size:9px;line-height:1.6}.strategy-box button{color:#dbece6;background:#ffffff0e;border:1px solid #ffffff32;border-radius:6px;padding:6px 8px;font-size:7px}.cockpit-grid{grid-template-columns:1.1fr .9fr;gap:14px;display:grid}.value-flow{justify-content:space-between;align-items:center;gap:6px;padding:38px 20px 45px;display:flex}.value-flow>div{text-align:center;flex:1;position:relative}.value-flow>div>span{color:#14775e;background:#e1f2eb;border-radius:9px;place-items:center;width:32px;height:32px;margin:0 auto 9px;font-size:10px;font-weight:800;display:grid}.value-flow p{color:#6c7974;margin:0;font-size:8px}.value-flow p strong{color:#24332e;margin-top:5px;font-size:11px;display:block}.value-flow>div>b{color:#1a896a;margin-top:6px;font-size:8px;display:block}.value-flow>div>i{color:#aec1ba;font-style:normal;position:absolute;top:9px;right:-7px}.region-row{border-bottom:1px solid #edf0ee;grid-template-columns:35px 1fr 68px 120px;align-items:center;gap:9px;padding:12px 15px;display:grid}.region-row strong{font-size:9px}.region-row>div{background:#edf0ef;border-radius:3px;height:5px}.region-row>div span{background:#309577;border-radius:3px;height:100%;display:block}.region-row>b{text-align:right;font-family:Arial,sans-serif;font-size:9px}.region-row small{color:#8d9793;font-size:7px}.source-architecture{grid-template-columns:1fr 120px 1fr 120px 1fr;align-items:center;gap:8px;margin-bottom:14px;display:grid}.system-card{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:11px;min-height:95px;padding:15px;display:flex}.system-card>span{border-radius:9px;place-items:center;width:36px;height:36px;font-size:13px;font-weight:800;display:grid}.system-card.feishu>span{color:#526ed5;background:#e8edff}.system-card.master{border-color:#bcd9ce;box-shadow:0 4px 18px #087a5b12}.system-card.master>span{color:#0b7659;background:#dff1e9}.system-card.service>span{color:#aa752a;background:#f8eedd}.system-card strong{font-size:9px;display:block}.system-card p{color:#60706a;margin:4px 0;font-size:8px}.system-card small{color:#9ba49f;font-size:7px}.sync-arrow{text-align:center}.sync-arrow b,.sync-arrow small{color:#87938e;font-size:7px;display:block}.sync-arrow span{color:#188064;margin:4px;font-size:22px;display:block}.governance-grid{grid-template-columns:1.4fr .6fr;gap:14px;display:grid}.quality-issue{border-bottom:1px solid #edf0ee;grid-template-columns:27px 1fr 45px 40px;align-items:center;gap:9px;padding:12px 15px;display:grid}.quality-issue>span{color:#b95944;background:#fae5e1;border-radius:4px;padding:3px 5px;font-size:7px;font-weight:800}.quality-issue strong,.quality-issue small{display:block}.quality-issue strong{font-size:9px}.quality-issue small{color:#8c9692;margin-top:4px;font-size:7px}.quality-issue>b{color:#65716d;text-align:right;font-family:Arial,sans-serif;font-size:8px}.quality-issue button{color:#14785f;background:0 0;border:0;font-size:7px}.source-row{border-bottom:1px solid #edf0ee;align-items:center;gap:9px;padding:11px 14px;display:flex}.source-row>div{flex:1}.source-row strong,.source-row small{display:block}.source-row strong{font-size:8px}.source-row small{color:#929c98;margin-top:3px;font-size:7px}.source-row>b{color:#61706a;font-size:7px}.source-dot{border-radius:50%;width:8px;height:8px}.source-dot.ok{background:#2c9a73;box-shadow:0 0 0 4px #2c9a7315}.source-dot.error{background:#d36047;box-shadow:0 0 0 4px #d3604715}.source-dot.waiting{background:#d8a044;box-shadow:0 0 0 4px #d8a04415}.modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0b201b99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.create-modal{background:#fff;border-radius:14px;width:min(620px,100%);overflow:hidden;box-shadow:0 30px 80px #071c17aa}.create-modal>header{border-bottom:1px solid #e9edeb;justify-content:space-between;align-items:flex-start;padding:20px 22px 15px;display:flex}.create-modal h2{margin:5px 0 0;font-size:20px}.create-modal>header button{color:#7b8682;cursor:pointer;background:0 0;border:0;font-size:24px}.form-grid{grid-template-columns:1fr 1fr;gap:13px;padding:20px 22px;display:grid}.form-grid label{color:#66736e;flex-direction:column;gap:6px;font-size:9px;display:flex}.form-grid label.wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{color:#2f3e39;background:#fafcfb;border:1px solid #dce4e0;border-radius:7px;outline:0;width:100%;padding:9px 10px;font-size:10px}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#1a896a;box-shadow:0 0 0 3px #1a896a10}.form-grid textarea{resize:vertical;height:65px}.create-modal>footer{background:#f8faf9;justify-content:space-between;align-items:center;gap:15px;padding:14px 22px;display:flex}.create-modal>footer>span{color:#89938f;font-size:8px}.create-modal>footer>div{gap:8px;display:flex}.create-modal>footer .primary-button{height:32px;padding:0 13px;font-size:9px}@media (max-width:1100px){.mini-kpis{grid-template-columns:repeat(2,1fr)}.kanban{grid-template-columns:repeat(4,260px)}.source-architecture{grid-template-columns:1fr 60px 1fr}.source-architecture .sync-arrow:nth-of-type(2),.system-card.service{display:none}.governance-grid,.cockpit-grid,.graph-layout{grid-template-columns:1fr}.network-map{height:380px}}@media (max-width:760px){.module-title{align-items:flex-start}.module-title h2{font-size:21px}.module-title>div>p:last-child{display:none}.mini-kpis{gap:9px}.mini-kpis article{min-height:80px}.filter-row{overflow-x:auto}.filter-row>i{display:none}.module-split{grid-template-columns:1fr}.event-filter{display:none}.funnel-layout,.visit-grid,.competitor-grid{grid-template-columns:1fr}.value-flow{justify-content:flex-start;overflow-x:auto}.value-flow>div{min-width:90px}.source-architecture{grid-template-columns:1fr 46px 1fr}.governance-grid{grid-template-columns:1fr}.region-row{grid-template-columns:32px 1fr 65px}.region-row small{display:none}.graph-insight{order:-1}.form-grid{grid-template-columns:1fr}.form-grid label.wide{grid-column:auto}}@media (max-width:430px){.mini-kpis{grid-template-columns:1fr 1fr}.mini-kpis article{padding:10px}.mini-kpis article>span{display:none}.module-title .primary-button{white-space:nowrap;padding:0 10px}.source-architecture{grid-template-columns:1fr}.source-architecture .sync-arrow,.system-card.service{display:none}.create-modal>footer{align-items:flex-end}.create-modal>footer>span{max-width:160px}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
