:root {
  --bg: #071310;
  --sidebar: #091815;
  --surface: #0d1d19;
  --surface-2: #11241f;
  --surface-3: #162e27;
  --line: rgba(154, 205, 187, .13);
  --line-strong: rgba(154, 205, 187, .24);
  --text: #edf7f2;
  --muted: #829991;
  --green: #34d399;
  --green-bright: #78edbc;
  --amber: #f4b860;
  --red: #ef7167;
  --blue: #72a7ee;
  --shadow: 0 22px 70px rgba(0, 0, 0, .3);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; min-height: 100vh; color: var(--text); background: var(--bg); font: 14px/1.6 "Microsoft YaHei UI", "PingFang SC", "Noto Sans SC", sans-serif; }
button, input, select { font: inherit; }
button, select { cursor: pointer; }
button { border: 0; }
.ambient { position: fixed; inset: 0; pointer-events: none; opacity: .8; background: radial-gradient(circle at 82% -10%, rgba(52,211,153,.11), transparent 32%), linear-gradient(rgba(120,237,188,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(120,237,188,.025) 1px, transparent 1px); background-size: auto, 48px 48px, 48px 48px; mask-image: linear-gradient(#000, transparent 85%); }
.app-shell { position: relative; display: grid; grid-template-columns: 238px minmax(0, 1fr); min-height: 100vh; }
.sidebar { position: sticky; top: 0; z-index: 20; height: 100vh; display: flex; flex-direction: column; padding: 24px 16px 18px; border-right: 1px solid var(--line); background: rgba(7, 22, 18, .95); backdrop-filter: blur(16px); }
.brand { display: flex; align-items: center; gap: 12px; padding: 0 8px 26px; border-bottom: 1px solid var(--line); }
.brand-mark { width: 43px; height: 43px; display: grid; place-items: center; border-radius: 6px 6px 14px 6px; color: #062017; background: var(--green); font-size: 21px; font-weight: 950; box-shadow: 0 0 28px rgba(52,211,153,.18); }
.brand strong, .brand span { display: block; }.brand strong { font-size: 16px; letter-spacing: .04em; }.brand span { color: var(--muted); font-size: 10px; letter-spacing: .16em; }
.main-nav { display: grid; gap: 6px; margin-top: 25px; }
.nav-item { width: 100%; min-height: 47px; display: grid; grid-template-columns: 28px 1fr auto; align-items: center; gap: 6px; padding: 0 12px; border-radius: 5px; color: #90a79f; background: transparent; text-align: left; transition: .18s ease; }
.nav-item i { font-style: normal; font-size: 18px; }.nav-item b { min-width: 22px; padding: 1px 6px; border-radius: 9px; color: #acc0b9; background: rgba(255,255,255,.06); font: 10px Consolas, monospace; text-align: center; }
.nav-item:hover { color: #d7e6e0; background: rgba(255,255,255,.035); }.nav-item.active { color: var(--green-bright); background: linear-gradient(90deg, rgba(52,211,153,.13), rgba(52,211,153,.035)); box-shadow: inset 2px 0 var(--green); }
.nav-item .alert-count { color: #1e1102; background: var(--amber); }
.source-health { margin-top: auto; padding: 17px 8px 20px; border-top: 1px solid var(--line); }
.source-health > p { display: flex; justify-content: space-between; margin: 0 0 13px; color: var(--muted); font-size: 10px; letter-spacing: .08em; }.source-health > p span { color: var(--green); letter-spacing: 0; }
.source-row { display: grid; grid-template-columns: 25px 1fr auto; align-items: center; gap: 7px; min-height: 38px; color: #abc0b8; font-size: 11px; }.source-row em { color: var(--green); font-style: normal; font-size: 9px; }.source-icon { width: 22px; height: 22px; display: grid; place-items: center; border-radius: 4px; font-style: normal; font-size: 11px; }.phone { color: #76e6bc; background: rgba(52,211,153,.12); }.web { color: #86b5f2; background: rgba(114,167,238,.12); }.media { color: #ff9e78; background: rgba(244,137,96,.12); }.wechat { color: #b3e976; background: rgba(164,218,99,.12); }
.sidebar-foot { display: flex; align-items: center; gap: 9px; padding: 16px 7px 0; border-top: 1px solid var(--line); }.operator { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; color: var(--green-bright); background: var(--surface-3); font: 700 11px Consolas, monospace; }.sidebar-foot > div:nth-child(2) { flex: 1; }.sidebar-foot b, .sidebar-foot span { display: block; }.sidebar-foot b { font-size: 11px; }.sidebar-foot span { color: var(--muted); font-size: 9px; }.sidebar-foot button { color: var(--muted); background: transparent; }
.workspace { min-width: 0; padding: 0 30px 48px; }
.topbar { min-height: 79px; display: flex; align-items: center; justify-content: space-between; gap: 25px; border-bottom: 1px solid var(--line); }.title-block p, .panel-head p { margin: 0 0 1px; color: var(--green); font: 700 9px/1.3 Consolas, monospace; letter-spacing: .13em; }.title-block h1 { margin: 0; font-size: 20px; letter-spacing: .02em; }.title-block h1 span { position: relative; top: -2px; margin-left: 7px; padding: 3px 6px; border: 1px solid rgba(52,211,153,.28); border-radius: 3px; color: var(--green); background: rgba(52,211,153,.08); font: 700 8px Consolas, monospace; }
.mobile-brand { display: none; }.top-actions { display: flex; align-items: center; gap: 9px; }.sync-state { display: flex; align-items: center; gap: 9px; margin-right: 8px; padding-right: 18px; border-right: 1px solid var(--line); }.sync-state i { width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 12px var(--green); animation: pulse 2s infinite; }.sync-state span, .sync-state small { display: block; }.sync-state span { color: #c1d2cc; font-size: 10px; }.sync-state small { color: var(--muted); font-size: 8px; }.icon-button, .primary-button { height: 38px; border-radius: 4px; }.icon-button { width: 38px; color: #b3c8c0; border: 1px solid var(--line-strong); background: rgba(255,255,255,.025); font-size: 18px; }.icon-button.spin { animation: spin .6s ease; }.primary-button { padding: 0 15px; color: #052218; background: var(--green); font-size: 11px; font-weight: 800; }.primary-button:hover { background: var(--green-bright); }.primary-button span { font-size: 16px; }
.view { display: none; }.view.active { display: block; animation:viewEnter .22s ease both; }.section-intro { min-height: 104px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }.section-intro span { color: var(--green); font: 700 9px Consolas, monospace; letter-spacing: .15em; }.section-intro h2 { margin: 2px 0 0; font-size: 25px; }.section-intro p { color: var(--muted); font-size: 11px; }
.metric-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }.metric-card { position: relative; min-height: 124px; overflow: hidden; padding: 20px; border: 1px solid var(--line); border-radius: 6px; background: linear-gradient(145deg, rgba(17,36,31,.94), rgba(11,28,23,.94)); box-shadow: var(--shadow); }.metric-card > span, .metric-card div > span { display: block; color: #98ada5; font-size: 11px; }.metric-card b { display: block; margin-top: 7px; font: 700 30px/1.2 Consolas, monospace; }.metric-card small { display: block; margin-top: 8px; color: var(--muted); font-size: 9px; }.metric-card small i { color: var(--green); font-style: normal; }.primary-metric { display: flex; justify-content: space-between; border-color: rgba(52,211,153,.27); background: linear-gradient(135deg, rgba(25,67,52,.78), rgba(11,34,27,.9)); }.primary-metric b { color: var(--green-bright); }.mini-chart { height: 58px; display: flex; align-items: end; gap: 4px; margin: 16px 0 0 15px; }.mini-chart i { width: 5px; border-radius: 3px 3px 0 0; background: rgba(52,211,153,.24); }.mini-chart i:nth-child(1){height:25%}.mini-chart i:nth-child(2){height:42%}.mini-chart i:nth-child(3){height:35%}.mini-chart i:nth-child(4){height:63%}.mini-chart i:nth-child(5){height:52%}.mini-chart i:nth-child(6){height:76%}.mini-chart i:nth-child(7){height:100%;background:var(--green)}
.metric-icon { position: absolute; right: 17px; top: 20px; width: 33px; height: 33px; display: grid; place-items: center; border-radius: 50%; font-style: normal; font-weight: 800; }.metric-icon.hot { color: var(--red); background: rgba(239,113,103,.1); }.metric-icon.clock { color: var(--amber); background: rgba(244,184,96,.1); }.metric-icon.score { color: var(--blue); background: rgba(114,167,238,.1); font-family: Georgia, serif; }
.panel { border: 1px solid var(--line); border-radius: 6px; background: rgba(12, 29, 24, .92); box-shadow: var(--shadow); }.leads-panel { margin-top: 13px; }.panel-head { min-height: 75px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 15px 18px; border-bottom: 1px solid var(--line); }.panel-head h3 { margin: 2px 0 0; font-size: 15px; }.panel-head h3 span { margin-left: 7px; color: var(--muted); font-size: 9px; font-weight: 400; }.panel-head.compact { min-height: 67px; }
.toolbar { display: flex; gap: 7px; }.search-box { min-width: 210px; height: 34px; display: flex; align-items: center; gap: 7px; padding: 0 10px; border: 1px solid var(--line); border-radius: 4px; color: var(--muted); background: rgba(0,0,0,.13); }.search-box input { min-width: 0; flex: 1; border: 0; outline: 0; color: var(--text); background: transparent; font-size: 10px; }.search-box input::placeholder { color: #647a72; }.toolbar select { height: 34px; padding: 0 26px 0 10px; border: 1px solid var(--line); border-radius: 4px; outline: 0; color: #a6bbb3; background: #0c1d18; font-size: 10px; }
.table-wrap { overflow-x: auto; }table { width: 100%; border-collapse: collapse; white-space: nowrap; }th { height: 41px; padding: 0 14px; color: #6f867e; background: rgba(255,255,255,.015); text-align: left; font-size: 9px; font-weight: 500; letter-spacing: .04em; }td { height: 67px; padding: 8px 14px; border-top: 1px solid rgba(154,205,187,.075); color: #b9cbc5; font-size: 10px; }tbody tr { cursor: pointer; transition: .15s ease; }tbody tr:hover { background: rgba(52,211,153,.035); }
.customer-cell { display: flex; align-items: center; gap: 9px; }.avatar { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 4px; color: var(--green-bright); background: rgba(52,211,153,.09); font-weight: 700; }.customer-cell b, .customer-cell small { display: block; }.customer-cell b { color: #e0ece8; font-size: 11px; }.customer-cell small { color: #6f867e; font: 9px Consolas, monospace; }.channel-tag, .intent-tag, .status-tag { display: inline-flex; align-items: center; gap: 5px; padding: 4px 7px; border-radius: 3px; font-size: 9px; }.channel-tag { color: #afc2bb; background: rgba(255,255,255,.035); }.channel-tag i { font-style: normal; }.need-cell { max-width: 220px; overflow: hidden; text-overflow: ellipsis; }.score-number { position: relative; display: inline-block; min-width: 39px; color: var(--green-bright); font: 700 15px Consolas, monospace; }.score-number::after { content: "/100"; color: #566e65; font-size: 8px; }.intent-tag.high { color: #ff9a90; background: rgba(239,113,103,.1); }.intent-tag.medium { color: #f4c475; background: rgba(244,184,96,.09); }.intent-tag.low { color: #8fa29b; background: rgba(255,255,255,.04); }.status-tag.pending { color: var(--amber); }.status-tag.contacted { color: var(--green); }.status-tag.nurture { color: var(--muted); }.row-arrow { width: 25px; height: 25px; border-radius: 50%; color: #789087; background: transparent; }.row-arrow:hover { color: var(--green); background: rgba(52,211,153,.08); }
.empty-state { display: none; min-height: 220px; place-items: center; align-content: center; color: var(--muted); }.empty-state.show { display: grid; }.empty-state b, .empty-state span { display: block; }.empty-state b { color: #bdcec8; }.empty-state span { font-size: 10px; }.table-foot { min-height: 55px; display: flex; align-items: center; justify-content: space-between; padding: 0 17px; border-top: 1px solid var(--line); color: var(--muted); font-size: 9px; }.table-foot div { display: flex; gap: 4px; }.table-foot button { width: 27px; height: 27px; border-radius: 3px; color: #80968e; border: 1px solid var(--line); background: transparent; font-size: 10px; }.table-foot button.active { color: #062017; border-color: var(--green); background: var(--green); }
.scoring-layout { display: grid; grid-template-columns: 340px minmax(0,1fr); gap: 13px; }.score-list-panel, .score-detail-panel { min-height: 635px; }.score-list-panel .search-box { min-width: 130px; width: 140px; }.score-lead-list { max-height: 565px; overflow-y: auto; }.score-lead { width: 100%; display: grid; grid-template-columns: 34px 1fr auto; gap: 10px; align-items: center; padding: 13px 16px; border-bottom: 1px solid var(--line); color: #b2c6be; background: transparent; text-align: left; }.score-lead:hover, .score-lead.active { background: rgba(52,211,153,.05); }.score-lead.active { box-shadow: inset 2px 0 var(--green); }.score-lead > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 4px; color: var(--green-bright); background: rgba(52,211,153,.09); }.score-lead b, .score-lead small { display: block; }.score-lead b { color: #dce9e4; font-size: 11px; }.score-lead small { margin-top: 2px; color: var(--muted); font-size: 9px; }.score-lead em { color: var(--green-bright); font: 700 16px Consolas, monospace; }
.detail-hero { min-height: 166px; display: grid; grid-template-columns: 1fr auto; align-items: center; padding: 27px; border-bottom: 1px solid var(--line); background: radial-gradient(circle at 95% 0, rgba(52,211,153,.09), transparent 45%); }.detail-person { display: flex; align-items: center; gap: 13px; }.detail-person .avatar { width: 46px; height: 46px; font-size: 16px; }.detail-person h3 { margin: 0; font-size: 18px; }.detail-person p { margin: 3px 0 0; color: var(--muted); font-size: 10px; }.detail-person p span { margin-right: 10px; }.score-ring { --score: 88; position: relative; width: 103px; height: 103px; display: grid; place-items: center; border-radius: 50%; background: conic-gradient(var(--green) calc(var(--score) * 1%), rgba(255,255,255,.06) 0); }.score-ring::before { content:""; position:absolute; inset:7px; border-radius:50%; background:#0d201a; }.score-ring div { position: relative; text-align: center; }.score-ring b { display: block; color: var(--green-bright); font: 700 29px/1 Consolas, monospace; }.score-ring span { color: var(--muted); font-size: 8px; }
.factor-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; padding: 20px 25px; }.factor-card { padding: 17px; border: 1px solid var(--line); border-radius: 5px; background: rgba(255,255,255,.018); }.factor-card header { display: flex; justify-content: space-between; align-items: center; }.factor-card header span { color: #a8bdb5; font-size: 10px; }.factor-card header b { font: 700 17px Consolas, monospace; }.factor-card header b i { color: var(--muted); font-size: 9px; font-style: normal; }.factor-bar { height: 4px; overflow: hidden; margin: 11px 0 9px; border-radius: 3px; background: rgba(255,255,255,.06); }.factor-bar i { display: block; height: 100%; border-radius: inherit; background: var(--green); }.factor-card p { margin: 0; color: #778e85; font-size: 9px; }.evidence { padding: 0 25px 24px; }.evidence h4 { margin: 0 0 10px; color: #c9d8d3; font-size: 11px; }.quote-box { position: relative; padding: 15px 17px 15px 31px; border-left: 2px solid var(--green); border-radius: 0 4px 4px 0; color: #b5c9c1; background: rgba(52,211,153,.045); font-size: 11px; }.quote-box::before { content: "“"; position: absolute; left: 10px; top: 5px; color: var(--green); font: 25px Georgia,serif; }.analysis-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 12px; }.analysis-tags span { padding: 4px 8px; border-radius: 3px; color: #8fcfb7; background: rgba(52,211,153,.07); font-size: 9px; }.score-rule { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 14px; }.score-rule div { padding: 10px; border: 1px solid var(--line); border-radius: 4px; }.score-rule b, .score-rule small { display: block; }.score-rule b { color: #b7cac3; font-size: 9px; }.score-rule small { color: var(--muted); font-size: 8px; }
.reminder-banner { min-height: 152px; display: flex; align-items: center; gap: 24px; padding: 24px 30px; overflow: hidden; border: 1px solid rgba(239,113,103,.22); border-radius: 6px; background: linear-gradient(105deg, rgba(67,29,26,.85), rgba(20,31,26,.88) 68%); box-shadow: var(--shadow); }.radar { position: relative; flex: 0 0 auto; width: 83px; height: 83px; display: grid; place-items: center; }.radar i { position:absolute; inset:0; border:1px solid rgba(239,113,103,.28); border-radius:50%; animation:ring 2.5s infinite; }.radar i:nth-child(2){inset:10px;animation-delay:-.8s}.radar span { position:relative; width:55px; height:55px; display:grid; place-items:center; border-radius:50%; color:#160906; background:var(--red); font:800 24px Consolas,monospace; }.reminder-banner > div:nth-child(2) { flex: 1; }.reminder-banner p { margin:0; color:#ef8c83; font:700 9px Consolas,monospace; letter-spacing:.14em; }.reminder-banner h3 { margin:4px 0 2px; font-size:20px; }.reminder-banner h3 b { color:#ff9a91; font:700 23px Consolas,monospace; }.reminder-banner > div span { color:#9caea7; font-size:10px; }.reminder-banner button { min-height:39px; padding:0 16px; border-radius:4px; color:#ffd5d1; border:1px solid rgba(239,113,103,.35); background:rgba(239,113,103,.1); font-size:10px; }.reminder-banner button:hover { background:rgba(239,113,103,.2); }
.reminder-layout { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr); gap:13px; margin-top:13px; }.reminder-list-panel, .playbook { min-height:500px; }.legend { color:var(--muted); font-size:9px; }.legend i { display:inline-block; width:6px; height:6px; margin:0 4px 0 10px; border-radius:50%; background:var(--red); }.legend i:nth-child(2){background:var(--amber)}.reminder-item { display:grid; grid-template-columns:45px 1fr auto; gap:13px; align-items:center; padding:16px 18px; border-bottom:1px solid var(--line); }.time-block { text-align:center; }.time-block b,.time-block small { display:block; }.time-block b { color:#e5f0ec; font:700 13px Consolas,monospace; }.time-block small { color:var(--muted); font-size:8px; }.reminder-info { min-width:0; }.reminder-info header { display:flex; align-items:center; gap:8px; }.reminder-info header b { font-size:11px; }.reminder-info p { margin:3px 0 0; overflow:hidden; color:#829990; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }.urgency { padding:2px 5px; border-radius:2px; color:#ff9f96; background:rgba(239,113,103,.1); font-size:8px; }.reminder-actions { display:flex; gap:6px; }.reminder-actions button { height:30px; padding:0 9px; border-radius:3px; color:#a5bbb2; border:1px solid var(--line); background:transparent; font-size:9px; }.reminder-actions button:first-child { color:#071b14; border-color:var(--green); background:var(--green); }.reminder-item.done { opacity:.5; }.reminder-item.done .reminder-info b { text-decoration:line-through; }
.playbook { padding-bottom:18px; }.playbook .panel-head > span { width:30px;height:30px;display:grid;place-items:center;border-radius:50%;color:#082018;background:var(--green);font:800 10px Consolas,monospace;}.focus-card { margin:17px; padding:16px; border:1px solid rgba(52,211,153,.18); border-radius:5px; background:linear-gradient(135deg,rgba(52,211,153,.1),rgba(52,211,153,.025));}.focus-card small,.focus-card b { display:block; }.focus-card small { color:var(--green);font-size:8px;letter-spacing:.1em;}.focus-card b { margin-top:3px;font-size:14px;}.focus-card p { margin:5px 0 0;color:#90a69e;font-size:9px;}.playbook ol { list-style:none;margin:0;padding:0 18px;}.playbook li { display:grid;grid-template-columns:28px 1fr;gap:9px;padding:10px 0;border-bottom:1px solid var(--line);}.playbook li > span { color:var(--green);font:700 10px Consolas,monospace;}.playbook li b { font-size:10px;}.playbook li p { margin:2px 0 0;color:var(--muted);font-size:9px;}.conversion { margin:18px 18px 0;padding:14px;border-left:2px solid var(--amber);background:rgba(244,184,96,.05);}.conversion span,.conversion b,.conversion small { display:block;}.conversion span,.conversion small { color:var(--muted);font-size:8px;}.conversion b { color:var(--amber);font:700 20px Consolas,monospace;}
.modal-backdrop { position:fixed;inset:0;z-index:100;display:none;place-items:center;padding:20px;background:rgba(2,9,7,.76);backdrop-filter:blur(6px);}.modal-backdrop.open { display:grid;animation:fade .2s ease;}.lead-modal { position:relative;width:min(680px,100%);max-height:calc(100vh - 40px);overflow:auto;border:1px solid var(--line-strong);border-radius:7px;background:#0c1e19;box-shadow:0 35px 120px rgba(0,0,0,.6);}.modal-close { position:absolute;right:15px;top:15px;z-index:2;width:31px;height:31px;border-radius:50%;color:#a6bbb3;background:rgba(255,255,255,.05);font-size:18px;}.modal-head { padding:27px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 90% 0,rgba(52,211,153,.1),transparent 45%);}.modal-head small { color:var(--green);font:700 9px Consolas,monospace;letter-spacing:.12em;}.modal-head h2 { margin:4px 0;font-size:21px;}.modal-head p { margin:0;color:var(--muted);font-size:10px;}.modal-score { display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:18px 27px;}.modal-score div { padding:13px;border:1px solid var(--line);border-radius:4px;}.modal-score span,.modal-score b { display:block;}.modal-score span { color:var(--muted);font-size:8px;}.modal-score b { margin-top:3px;color:var(--green-bright);font:700 17px Consolas,monospace;}.modal-body { padding:0 27px 25px;}.modal-body h4 { margin:10px 0 7px;font-size:10px;}.modal-body p { margin:0;padding:13px;color:#abc0b8;background:rgba(255,255,255,.025);font-size:10px;}.modal-actions { display:flex;justify-content:flex-end;gap:7px;padding:16px 27px;border-top:1px solid var(--line);}.modal-actions button { min-height:35px;padding:0 13px;border-radius:3px;color:#b5c8c1;border:1px solid var(--line);background:transparent;font-size:9px;}.modal-actions button.primary { color:#062017;border-color:var(--green);background:var(--green);font-weight:700;}
.toast { position:fixed;left:50%;bottom:25px;z-index:200;padding:10px 16px;border-radius:4px;color:#061d15;background:var(--green-bright);box-shadow:0 12px 40px rgba(0,0,0,.35);font-size:10px;font-weight:700;opacity:0;transform:translate(-50%,12px);pointer-events:none;transition:.2s ease;}.toast.show { opacity:1;transform:translate(-50%,0);}
@keyframes reveal { from { opacity:0;transform:translateY(8px); } }@keyframes fade { from{opacity:0} }@keyframes pulse { 50%{opacity:.35;box-shadow:0 0 3px var(--green)} }@keyframes spin { to{transform:rotate(360deg)} }@keyframes ring { from{transform:scale(.8);opacity:.8}to{transform:scale(1.2);opacity:0} }
@media(max-width:1100px){.metric-grid{grid-template-columns:repeat(2,1fr)}.toolbar .search-box{min-width:150px}.scoring-layout{grid-template-columns:290px 1fr}.factor-grid{grid-template-columns:1fr}.reminder-layout{grid-template-columns:1fr}.playbook{min-height:0}}
@media(max-width:780px){.app-shell{display:block}.sidebar{position:fixed;left:0;transform:translateX(-100%);width:238px;transition:.25s ease}.sidebar.open{transform:none}.workspace{padding:0 14px 35px}.title-block{display:none}.mobile-brand{display:flex;align-items:center;gap:10px}.mobile-brand button{color:var(--green);background:transparent;font-size:20px}.topbar{min-height:65px}.sync-state{display:none}.section-intro{min-height:90px}.section-intro p{display:none}.panel-head{align-items:flex-start;flex-direction:column}.toolbar{width:100%;overflow-x:auto}.leads-panel .panel-head{min-height:120px}.scoring-layout{grid-template-columns:1fr}.score-list-panel{min-height:0}.score-lead-list{max-height:260px}.score-detail-panel{min-height:0}.reminder-banner{padding:20px}.reminder-banner .radar{display:none}.reminder-banner button{display:none}.modal-score{grid-template-columns:1fr}}
@media(max-width:520px){.top-actions .primary-button{padding:0 10px;font-size:9px}.icon-button{display:none}.metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-card{min-height:105px;padding:15px}.metric-card b{font-size:24px}.primary-metric .mini-chart{display:none}.toolbar{display:grid;grid-template-columns:1fr 1fr}.toolbar .search-box{grid-column:1/-1;width:100%}.toolbar select{width:100%}th,td{padding-left:10px;padding-right:10px}.table-foot div{display:none}.detail-hero{grid-template-columns:1fr;padding:20px}.score-ring{margin:18px auto 0}.factor-grid,.evidence{padding-left:16px;padding-right:16px}.score-rule{grid-template-columns:1fr}.reminder-item{grid-template-columns:40px 1fr}.reminder-actions{grid-column:2}.reminder-banner{min-height:130px}.modal-head,.modal-body,.modal-actions{padding-left:18px;padding-right:18px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}

/* Readability pass: the dashboard is designed for quick executive scanning. */
body { font-size: 16px; line-height: 1.65; }
.app-shell { grid-template-columns: 260px minmax(0, 1fr); }
.sidebar { padding: 26px 18px 20px; }
.brand { gap: 14px; padding-bottom: 28px; }
.brand-mark { width: 48px; height: 48px; font-size: 24px; }
.brand strong { font-size: 18px; }
.brand span { margin-top: 2px; font-size: 12px; letter-spacing: .09em; }
.nav-item { min-height: 54px; padding: 0 14px; font-size: 15px; }
.nav-item i { font-size: 20px; }
.nav-item b { min-width: 25px; font-size: 12px; }
.source-health > p { margin-bottom: 14px; font-size: 12px; }
.source-row { min-height: 43px; font-size: 13px; }
.source-row em { font-size: 11px; }
.source-icon { width: 25px; height: 25px; font-size: 12px; }
.sidebar-foot b { font-size: 13px; }
.sidebar-foot span { font-size: 11px; }
.workspace { padding: 0 clamp(22px, 3vw, 42px) 60px; }
.topbar { min-height: 88px; }
.title-block p, .panel-head p { margin-bottom: 3px; font-size: 11px; }
.title-block h1 { font-size: 23px; }
.sync-state span { font-size: 12px; }
.sync-state small { margin-top: 1px; font-size: 10px; }
.icon-button, .primary-button { height: 42px; }
.primary-button { padding: 0 18px; font-size: 13px; }
.section-intro { min-height: 118px; }
.section-intro span { font-size: 11px; }
.section-intro h2 { font-size: 30px; }
.section-intro p { font-size: 14px; }
.metric-grid { gap: 14px; }
.metric-card { min-height: 142px; padding: 23px; }
.metric-card > span, .metric-card div > span { font-size: 14px; }
.metric-card b { margin-top: 8px; font-size: 36px; }
.metric-card small { margin-top: 9px; font-size: 12px; }
.metric-icon { width: 38px; height: 38px; font-size: 16px; }
.panel-head { min-height: 88px; padding: 18px 22px; }
.panel-head h3 { font-size: 18px; }
.panel-head h3 span { font-size: 12px; }
.toolbar { gap: 9px; }
.search-box { min-width: 250px; height: 40px; padding: 0 12px; }
.search-box input { font-size: 13px; }
.toolbar select { height: 40px; padding-left: 12px; font-size: 13px; }
th { height: 48px; padding: 0 18px; color: #90a59e; font-size: 12px; font-weight: 600; }
td { height: 96px; padding: 14px 18px; font-size: 13px; }
table th:first-child { width: 245px; }
table th:nth-child(2) { width: 36%; }
table th:nth-child(3) { width: 155px; }
table th:nth-child(4) { width: 170px; }
.customer-cell { gap: 12px; }
.avatar { width: 42px; height: 42px; font-size: 15px; }
.customer-cell b { color: #edf7f2; font-size: 15px; }
.customer-cell b em { margin-left: 7px; color: #829990; font-size: 11px; font-style: normal; font-weight: 400; }
.customer-cell small { margin: 2px 0 5px; font-size: 11px; }
.channel-tag { padding: 3px 7px; font-size: 11px; }
.need-cell { max-width: 440px; white-space: normal; }
.need-cell > b, .need-cell > small { display: block; }
.need-cell > b { overflow: hidden; color: #dbe8e3; font-size: 14px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.need-cell > small { margin-top: 5px; overflow: hidden; color: #7f978e; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.decision-cell { display: flex; align-items: center; gap: 10px; }
.score-number { min-width: 48px; font-size: 20px; }
.score-number::after { font-size: 9px; }
.intent-tag, .status-tag { padding: 5px 8px; font-size: 12px; }
.follow-cell b, .follow-cell span { display: block; }
.follow-cell b { margin-bottom: 7px; color: #c5d5cf; font-size: 12px; font-weight: 500; }
.status-tag { width: max-content; padding-left: 0; }
.detail-button { min-width: 88px; height: 36px; border-radius: 4px; color: var(--green-bright); border: 1px solid rgba(52,211,153,.2); background: rgba(52,211,153,.06); font-size: 12px; }
.detail-button:hover { border-color: var(--green); background: rgba(52,211,153,.12); }
.detail-button span { margin-left: 5px; font-size: 17px; }
.table-foot { min-height: 62px; font-size: 12px; }
.table-foot button { width: 32px; height: 32px; font-size: 12px; }
.score-lead { grid-template-columns: 42px 1fr auto; padding: 16px 18px; }
.score-lead > span { width: 42px; height: 42px; font-size: 14px; }
.score-lead b { font-size: 14px; }
.score-lead small { font-size: 11px; }
.score-lead em { font-size: 20px; }
.detail-person h3 { font-size: 21px; }
.detail-person p { font-size: 12px; }
.factor-card header span { font-size: 13px; }
.factor-card header b { font-size: 21px; }
.factor-card p, .quote-box { font-size: 13px; }
.evidence h4 { font-size: 14px; }
.analysis-tags span { font-size: 11px; }
.score-rule b { font-size: 12px; }
.score-rule small { margin-top: 3px; font-size: 11px; line-height: 1.5; }
.reminder-banner p { font-size: 11px; }
.reminder-banner h3 { font-size: 24px; }
.reminder-banner > div span { font-size: 13px; }
.reminder-banner button { min-height: 42px; font-size: 12px; }
.legend, .time-block small { font-size: 11px; }
.time-block b { font-size: 16px; }
.reminder-info header b { font-size: 14px; }
.reminder-info p { margin-top: 5px; font-size: 12px; }
.urgency { padding: 3px 6px; font-size: 10px; }
.reminder-actions button { height: 34px; font-size: 11px; }
.focus-card small { font-size: 10px; }
.focus-card b { font-size: 17px; }
.focus-card p, .playbook li p { font-size: 12px; }
.playbook li b { font-size: 13px; }
.playbook li > span { font-size: 12px; }
.conversion span, .conversion small { font-size: 11px; }
.modal-head small { font-size: 11px; }
.modal-head p, .modal-body p { font-size: 13px; }
.modal-score span { font-size: 11px; }
.modal-score b { font-size: 21px; }
.modal-body h4 { font-size: 13px; }
.modal-actions button { min-height: 40px; font-size: 12px; }

@media (max-width: 780px) {
  .sidebar { width: 270px; }
  .workspace { padding: 0 14px 40px; }
  .mobile-brand b { font-size: 16px; }
  .section-intro h2 { font-size: 28px; }
  .metric-card { min-height: 122px; padding: 18px; }
  .metric-card > span, .metric-card div > span { font-size: 13px; }
  .metric-card b { font-size: 30px; }
  .panel-head { padding: 17px; }
  .leads-panel .panel-head { min-height: 168px; }
  .toolbar { display: grid; grid-template-columns: 1fr 1fr; overflow: visible; }
  .toolbar .search-box { grid-column: 1 / -1; width: 100%; }
  .toolbar select { width: 100%; }
  .table-wrap { overflow: visible; padding: 10px; }
  table, tbody { display: block; }
  thead { display: none; }
  tbody tr { display: grid; grid-template-columns: 1fr auto; gap: 14px; margin-bottom: 10px; padding: 17px; border: 1px solid var(--line); border-radius: 7px; background: rgba(255,255,255,.018); }
  td { display: block; height: auto; padding: 0; border: 0; white-space: normal; }
  td[data-label="客户与来源"], td[data-label="核心需求"] { grid-column: 1 / -1; }
  td[data-label="AI 判断"] { grid-column: 1; }
  td[data-label="跟进状态"] { grid-column: 2; grid-row: 3; text-align: right; }
  td[data-label="操作"] { grid-column: 1 / -1; }
  .need-cell { max-width: none; padding: 12px 0 14px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
  .need-cell > b, .need-cell > small { white-space: normal; }
  .need-cell > small { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
  .follow-cell b { margin-bottom: 5px; }
  .follow-cell .status-tag { margin-left: auto; }
  .detail-button { width: 100%; height: 42px; margin-top: 3px; }
  .table-foot { padding: 0 12px; }
  .score-list-panel .panel-head { flex-direction: row; align-items: center; }
  .score-list-panel .search-box { width: 160px; }
}

@media (max-width: 520px) {
  .topbar { gap: 10px; }
  .top-actions { display: none; }
  .metric-grid { gap: 9px; }
  .metric-card { min-height: 116px; padding: 15px; }
  .metric-card b { font-size: 28px; }
  .metric-card small { font-size: 10px; }
  .metric-icon { right: 12px; top: 14px; width: 32px; height: 32px; }
  .panel-head h3 { font-size: 17px; }
  .customer-cell b { font-size: 16px; }
  .need-cell > b { font-size: 15px; }
  .score-list-panel .panel-head { align-items: flex-start; flex-direction: column; }
  .score-list-panel .search-box { width: 100%; }
  .reminder-item { padding: 15px; }
  .reminder-info p { white-space: normal; }
}

/* Interactive source monitor and account controls. */
.source-title { width:100%;display:grid;grid-template-columns:1fr auto 14px;align-items:center;gap:8px;margin-bottom:8px;padding:0 2px;color:var(--muted);background:transparent;text-align:left;font-size:12px; }.source-title b{color:var(--green);font-size:11px}.source-title i{color:#769089;font-style:normal;font-size:18px}.source-title:hover span,.source-title:hover i{color:var(--green-bright)}
.source-row { width:100%;display:grid;grid-template-columns:25px 1fr auto 14px;align-items:center;gap:7px;min-height:49px;padding:4px 2px;color:#abc0b8;border-radius:4px;background:transparent;text-align:left; }.source-row:hover{background:rgba(52,211,153,.08)}.source-row>span b,.source-row>span small{display:block}.source-row>span b{color:#abc0b8;font-size:12px;font-weight:500}.source-row>span small{margin-top:1px;color:#668078;font-size:9px}.source-row em{color:var(--green);font-style:normal;font-size:9px}.source-row>strong{color:#648078;font-size:16px;font-weight:400}.source-row:hover>strong{color:var(--green)}
.sidebar-foot { width:100%;color:inherit;background:transparent;text-align:left }.sidebar-foot>i{color:var(--muted);font-style:normal}.sidebar-foot:hover>i{color:var(--green)}
.drawer-backdrop{position:fixed;inset:0;z-index:90;display:none;background:rgba(1,8,6,.64);backdrop-filter:blur(4px)}.drawer-backdrop.open{display:block;animation:fade .2s ease}.source-drawer{position:absolute;top:0;right:0;width:min(560px,100%);height:100%;overflow-y:auto;border-left:1px solid var(--line-strong);background:#0b1c17;box-shadow:-20px 0 80px rgba(0,0,0,.45);animation:drawerIn .3s ease}.drawer-head{min-height:90px;display:flex;align-items:center;justify-content:space-between;padding:20px 25px;border-bottom:1px solid var(--line)}.drawer-head p{margin:0;color:var(--green);font:700 10px Consolas,monospace;letter-spacing:.14em}.drawer-head h2{margin:3px 0 0;font-size:21px}.drawer-head button{width:34px;height:34px;border-radius:50%;color:#aec0ba;background:rgba(255,255,255,.05);font-size:22px}.drawer-content{padding-bottom:24px}
.source-overview{padding:23px 25px 20px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 95% 0,rgba(52,211,153,.1),transparent 45%)}.source-live{display:flex;align-items:center;gap:8px;color:var(--green-bright);font-size:12px}.source-live i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 12px var(--green)}.source-overview>p{margin:13px 0 18px;color:#9cafaa;font-size:12px;line-height:1.75}.source-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.source-kpis div{padding:12px;border:1px solid var(--line);border-radius:4px;background:rgba(255,255,255,.025)}.source-kpis span,.source-kpis b,.source-kpis small{display:block}.source-kpis span{color:var(--muted);font-size:10px}.source-kpis b{margin:4px 0 1px;color:var(--green-bright);font:700 22px Consolas,monospace}.source-kpis small{color:#6f867e;font-size:9px}.sync-source-btn{width:100%;height:40px;margin-top:16px;border:1px solid rgba(52,211,153,.3);border-radius:4px;color:var(--green-bright);background:rgba(52,211,153,.08);font-size:12px;font-weight:700}.sync-source-btn:hover{background:rgba(52,211,153,.15)}.sync-source-btn.syncing{color:#061d15;border-color:var(--green);background:var(--green)}.sync-source-btn span{margin-right:5px;font-size:17px}
.platform-section,.sync-log{padding:21px 25px 0}.drawer-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.drawer-section-title b{color:#d7e5df;font-size:13px}.drawer-section-title span{color:var(--muted);font-size:10px}.platform-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.platform-grid button{display:grid;grid-template-columns:1fr auto;gap:3px 8px;padding:12px;border:1px solid var(--line);border-radius:4px;color:#b6c9c1;background:rgba(255,255,255,.02);text-align:left}.platform-grid button:hover{border-color:rgba(52,211,153,.35);background:rgba(52,211,153,.07)}.platform-grid button>span{font-size:12px}.platform-grid button>b{color:var(--green-bright);font:700 18px Consolas,monospace;text-align:right}.platform-grid button>b small{color:var(--muted);font-size:9px;font-weight:400}.platform-grid button>em{color:var(--green);font-size:9px;font-style:normal}.platform-grid button>em i{display:inline-block;width:5px;height:5px;margin-right:4px;border-radius:50%;background:var(--green)}.platform-grid button>small{color:var(--muted);font-size:9px;text-align:right}
.log-list{display:grid;border-top:1px solid var(--line)}.log-list article{display:grid;grid-template-columns:65px 1fr auto;gap:9px;align-items:start;padding:12px 0;border-bottom:1px solid rgba(154,205,187,.08);animation:logIn .4s ease both;animation-delay:var(--delay)}.log-list time{color:#8da79d;font:11px Consolas,monospace}.log-list article b{color:#cbdad4;font-size:11px}.log-list article p{margin:2px 0 0;color:#7d948b;font-size:10px;line-height:1.5}.log-list article>span{padding:2px 5px;border-radius:2px;color:var(--green);background:rgba(52,211,153,.08);font-size:9px}.pipeline{display:flex;align-items:center;justify-content:center;gap:8px;margin:22px 25px 0;padding:13px 8px;border:1px dashed rgba(154,205,187,.2);border-radius:4px;color:#8ea69d;font-size:10px}.pipeline i{color:var(--green);font-style:normal}
.account-popover{position:fixed;left:20px;bottom:77px;z-index:80;width:235px;display:none;padding:13px;border:1px solid var(--line-strong);border-radius:6px;background:#10251f;box-shadow:0 20px 65px rgba(0,0,0,.4)}.account-popover.open{display:block;animation:rise .2s ease}.account-popover header{display:flex;align-items:center;gap:9px;padding-bottom:11px;border-bottom:1px solid var(--line)}.account-popover header>div b,.account-popover header>div small{display:block}.account-popover header>div b{font-size:12px}.account-popover header>div small{color:var(--muted);font-size:9px}.account-popover>button{width:100%;padding:10px 5px;color:#afc2b9;background:transparent;text-align:left;font-size:11px}.account-popover>button:hover{color:var(--green-bright)}.account-popover>button span{display:inline-block;width:24px;color:var(--green)}.account-popover>p{margin:7px 0 0;padding-top:9px;border-top:1px solid var(--line);color:#668078;font-size:9px}
@keyframes drawerIn{from{transform:translateX(25px);opacity:.5}}@keyframes logIn{from{transform:translateY(5px);opacity:0}}
@media(max-width:520px){.drawer-head,.source-overview,.platform-section,.sync-log{padding-left:18px;padding-right:18px}.pipeline{margin-left:18px;margin-right:18px;gap:4px;font-size:9px}.source-kpis b{font-size:18px}.account-popover{left:14px;bottom:72px}}

/* Living AI lead radar: restrained motion that makes the agent feel operational. */
.leads-panel { position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(9,28,22,.96),rgba(7,22,18,.96));isolation:isolate }
.leads-panel::before { content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 14% 0,rgba(52,211,153,.09),transparent 24%),linear-gradient(rgba(105,213,174,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(105,213,174,.018) 1px,transparent 1px);background-size:auto,30px 30px,30px 30px }
.lead-radar { position:relative;min-height:76px;display:grid;grid-template-columns:auto minmax(230px,1fr) auto auto;align-items:center;gap:18px;padding:13px 22px;overflow:hidden;border-bottom:1px solid rgba(52,211,153,.17);background:linear-gradient(90deg,rgba(52,211,153,.075),rgba(52,211,153,.018) 55%,rgba(64,148,185,.04)) }
.lead-radar::after { content:"";position:absolute;top:0;bottom:0;width:180px;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(93,255,197,.065),transparent);transform:skewX(-18deg);animation:radarSweep 6s linear infinite }
.radar-orbit { position:relative;width:48px;height:48px;display:grid;place-items:center;flex:0 0 auto }
.radar-orbit::before,.radar-orbit::after,.radar-orbit>i { content:"";position:absolute;inset:0;border:1px solid rgba(52,211,153,.24);border-radius:50% }.radar-orbit::after{inset:8px;border-color:rgba(52,211,153,.16)}.radar-orbit>i:first-child{border-color:transparent;border-top-color:var(--green);animation:orbit 2.6s linear infinite}.radar-orbit>i:nth-child(2){inset:4px;border-color:transparent;border-bottom-color:rgba(120,237,188,.65);animation:orbit 4s linear infinite reverse}.radar-orbit>span{position:relative;z-index:1;width:25px;height:25px;display:grid;place-items:center;border-radius:50%;color:#062118;background:var(--green);box-shadow:0 0 18px rgba(52,211,153,.25);font:800 9px Consolas,monospace}
.radar-copy b,.radar-copy span{display:block}.radar-copy b{color:#dff1ea;font-size:13px;letter-spacing:.02em}.radar-copy b i{display:inline-block;width:6px;height:6px;margin-right:5px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green);animation:pulse 1.5s ease infinite}.radar-copy span{margin-top:3px;color:#789188;font-size:10px;transition:opacity .25s ease}.radar-copy span.changing{opacity:.25}
.signal-stream { display:flex;align-items:center;gap:7px;color:#6e877e;font:700 8px Consolas,monospace;letter-spacing:.12em }.signal-stream i{position:relative;width:27px;height:1px;overflow:hidden;background:rgba(52,211,153,.16)}.signal-stream i::after{content:"";position:absolute;top:0;left:-8px;width:8px;height:1px;background:var(--green);box-shadow:0 0 5px var(--green);animation:dataPacket 1.8s linear infinite}.signal-stream i:nth-of-type(2)::after{animation-delay:-.6s}.signal-stream i:nth-of-type(3)::after{animation-delay:-1.2s}
.radar-stats { min-width:105px;padding-left:17px;border-left:1px solid var(--line);text-align:right }.radar-stats small,.radar-stats b,.radar-stats em{display:block}.radar-stats small{color:#70877e;font-size:8px}.radar-stats b{margin:1px 0;color:var(--green-bright);font:700 21px/1.1 Consolas,monospace;text-shadow:0 0 16px rgba(52,211,153,.22)}.radar-stats em{color:#6f877e;font-size:8px;font-style:normal}
.table-wrap { position:relative }.table-scan{position:absolute;left:0;right:0;top:0;z-index:2;height:1px;pointer-events:none;opacity:.65;background:linear-gradient(90deg,transparent 2%,rgba(75,235,177,.15) 18%,var(--green) 50%,rgba(75,235,177,.15) 82%,transparent 98%);box-shadow:0 0 14px rgba(52,211,153,.25);animation:tableScan 8s ease-in-out infinite}
#leadTable tr { position:relative;animation:leadMaterialize .48s cubic-bezier(.2,.75,.25,1) both;animation-delay:var(--row-delay,0ms) }
#leadTable tr::after { content:"";position:absolute;left:0;top:0;bottom:0;width:2px;opacity:0;background:var(--green);box-shadow:0 0 12px rgba(52,211,153,.45);transition:opacity .18s ease }
#leadTable tr:hover::after { opacity:1 }
.score-number { text-shadow:0 0 16px rgba(52,211,153,.2) }.score-number.counting{animation:scoreGlow .7s ease}.intent-tag.high{position:relative;overflow:hidden}.intent-tag.high::after{content:"";position:absolute;inset:-2px;border:1px solid rgba(239,113,103,.22);border-radius:inherit;animation:intentPulse 2.4s ease-out infinite}
.channel-tag i { position:relative }.channel-tag i::after{content:"";position:absolute;right:-2px;top:-2px;width:4px;height:4px;border-radius:50%;background:var(--green);box-shadow:0 0 7px var(--green);animation:pulse 2s ease infinite}
.leads-panel.capturing .lead-radar { border-bottom-color:rgba(120,237,188,.55);box-shadow:inset 0 -12px 30px rgba(52,211,153,.04) }.leads-panel.capturing .radar-orbit>span{animation:captureCore .7s ease}.leads-panel.capturing .table-scan{animation:fastScan .9s ease}.fresh-lead{animation:freshLead 1.1s ease both!important}
@keyframes radarSweep{from{left:-240px}to{left:calc(100% + 100px)}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes dataPacket{to{left:35px}}@keyframes tableScan{0%,8%{top:0;opacity:0}18%{opacity:.65}68%{top:100%;opacity:.3}76%,100%{top:100%;opacity:0}}@keyframes fastScan{from{top:0;opacity:1}to{top:100%;opacity:0}}@keyframes leadMaterialize{from{transform:translateY(7px);background:rgba(52,211,153,.035)}to{transform:none;background:transparent}}@keyframes scoreGlow{50%{color:#d9fff0;text-shadow:0 0 22px var(--green)}}@keyframes intentPulse{0%{transform:scale(.9);opacity:.8}75%,100%{transform:scale(1.16);opacity:0}}@keyframes captureCore{50%{transform:scale(1.18);box-shadow:0 0 35px var(--green)}}@keyframes freshLead{0%{opacity:0;transform:translateY(-10px);background:rgba(52,211,153,.2)}60%{opacity:1;transform:none;background:rgba(52,211,153,.08)}100%{background:transparent}}
@keyframes viewEnter{from{opacity:.82;transform:translateY(3px)}to{opacity:1;transform:none}}
@media(max-width:980px){.signal-stream{display:none}.lead-radar{grid-template-columns:auto 1fr auto}}
@media(max-width:620px){.lead-radar{min-height:80px;grid-template-columns:auto 1fr;padding:12px 15px}.radar-stats{display:none}.radar-copy b{font-size:12px}.radar-copy span{font-size:9px}.table-scan{display:none}}
@media(prefers-reduced-motion:reduce){.lead-radar::after,.radar-orbit>i,.signal-stream i::after,.table-scan,.intent-tag.high::after{animation:none!important}}

/* The lead rows themselves form a continuously moving realtime feed. */
.live-flow-control{height:40px;display:flex;align-items:center;gap:7px;padding:0 11px;border:1px solid rgba(52,211,153,.22);border-radius:4px;color:var(--green-bright);background:rgba(52,211,153,.07);white-space:nowrap;font-size:11px}.live-flow-control i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 9px var(--green);animation:pulse 1.25s ease infinite}
.table-wrap{overflow:hidden}.table-wrap table{display:block;width:100%;table-layout:fixed}.table-wrap thead,.table-wrap tbody{display:block;width:100%}.table-wrap thead tr,#leadTable tr{display:grid;width:100%;grid-template-columns:245px minmax(320px,1fr) 155px 170px 110px;align-items:center}.table-wrap tbody{height:480px;overflow:visible}#leadTable{transform:translateY(0);will-change:transform}#leadTable tr{height:96px}#leadTable td{display:block;width:auto!important;min-width:0;vertical-align:middle}
.lead-radar{min-height:58px;padding-top:8px;padding-bottom:8px}.radar-orbit{width:40px;height:40px}.radar-orbit>span{width:22px;height:22px}.lead-radar::after{opacity:.45}.table-scan{display:none}
@media(max-width:780px){.live-flow-control{grid-column:1/-1;width:max-content}.table-wrap{overflow:hidden}.table-wrap tbody{height:1060px}#leadTable tr{display:grid;height:auto}#leadTable td,#leadTable td:nth-child(n){display:block;width:auto}}

/* Digital employee identity system. */
.brand{position:relative}.brand-identity{min-width:0;flex:1}.employee-number{position:relative;flex:0 0 auto;width:48px;height:48px;display:grid;place-items:center;align-content:center;overflow:hidden;border:1px solid rgba(52,211,153,.28);border-radius:6px 6px 14px 6px;background:linear-gradient(145deg,rgba(52,211,153,.13),rgba(52,211,153,.035));box-shadow:inset 0 0 18px rgba(52,211,153,.035)}.employee-number::after{content:"";position:absolute;left:-30%;right:-30%;height:1px;background:linear-gradient(90deg,transparent,var(--green),transparent);box-shadow:0 0 7px var(--green);animation:employeeScan 3.2s linear infinite}.employee-number small{color:#7f9c92;font-size:7px;letter-spacing:.08em}.employee-number b{color:var(--green-bright);font:800 18px/1 Consolas,monospace;letter-spacing:.05em;text-shadow:0 0 14px rgba(52,211,153,.28)}
.product-title-row{display:flex;align-items:center;gap:17px}.product-title-row h1{flex:0 0 auto}.employee-role{position:relative;min-height:44px;display:flex;align-items:center;gap:10px;padding:6px 14px 6px 7px;overflow:hidden;border:1px solid rgba(244,184,96,.72);border-radius:5px;background:linear-gradient(105deg,rgba(244,184,96,.14),rgba(244,184,96,.035));box-shadow:inset 0 0 22px rgba(244,184,96,.035),0 0 18px rgba(244,184,96,.06)}.employee-role::after{content:"";position:absolute;top:0;bottom:0;width:45px;background:linear-gradient(90deg,transparent,rgba(255,220,154,.1),transparent);transform:skewX(-18deg);animation:employeeBadgeSweep 4.6s linear infinite}.employee-role>i{width:31px;height:31px;display:grid;place-items:center;border-radius:4px;color:#2b1a04;background:linear-gradient(145deg,#ffc66a,#eaa544);font:900 12px Consolas,monospace;box-shadow:0 0 16px rgba(244,184,96,.18)}.employee-role p{position:relative;z-index:1;margin:0}.employee-role b,.employee-role small{display:block}.employee-role b{color:#ffd58b;font-size:14px;line-height:1.25;letter-spacing:.03em}.employee-role small{margin-top:2px;color:#a9916b;font-size:8px;letter-spacing:.1em}
@keyframes employeeScan{from{top:-2px}to{top:calc(100% + 2px)}}@keyframes employeeBadgeSweep{from{left:-70px}to{left:calc(100% + 35px)}}
@media(max-width:1100px){.employee-number{display:none}.product-title-row{gap:10px}.employee-role{padding-right:8px}}
@media(max-width:780px){.mobile-brand b::after{content:" · 数字员工 2";color:var(--green);font-size:11px;font-weight:600}.employee-role{display:none}}
@media(prefers-reduced-motion:reduce){.employee-number::after,.employee-role::after{animation:none}}
