:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#18212f;background:#eef3f7;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}.shell{min-height:100vh;padding:24px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}h1,h2,p{margin:0}h1{font-size:28px;font-weight:750}h2{font-size:16px;font-weight:720}.topbar p{margin-top:6px;color:#5d6b7a}.statusStrip{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.statusStrip span,.loginButton,.logoutButton{min-width:78px;border-radius:999px;padding:8px 12px;text-align:center;background:#dce5ed;color:#334155;font-size:13px;font-weight:700}.loginButton,.logoutButton,.userBadge{display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none}.loginButton{background:#176fb1;color:#fff}.logoutButton{min-height:auto;background:#e8eef4;color:#253246;font-size:13px}.statusStrip .userBadge,.statusStrip span[data-state=registered],.statusStrip span[data-state=in_call]{background:#d8f3e5;color:#10633d}.statusStrip span[data-state=failed]{background:#ffe1df;color:#9d2118}.layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(340px,1fr) minmax(280px,380px);gap:16px;align-items:start}.metrics,.bitableInspector{margin-bottom:16px}.inspectorForm{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:10px}.hint{margin-top:10px;color:#607083;font-size:13px}.metadataGrid{display:grid;gap:12px;margin-top:14px}.metadataSummary,.candidateGrid{display:grid;gap:8px}.metadataSummary{grid-template-columns:auto minmax(0,1fr);border:1px solid #e1e8ef;border-radius:6px;padding:10px 12px;background:#f8fbfd}.metadataSummary span,.candidateGrid span{color:#607083;font-size:12px;font-weight:800}.metadataSummary strong{overflow-wrap:anywhere;font-size:13px}.candidateGrid{grid-template-columns:repeat(5,minmax(110px,1fr))}.candidateGrid div,.fieldList div{border:1px solid #e1e8ef;border-radius:6px;background:#fbfdff;padding:10px}.candidateGrid strong{display:block;margin-top:6px;color:#172033;font-size:14px;overflow-wrap:anywhere}.fieldList{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;max-height:240px;overflow:auto}.fieldList div{display:flex;align-items:center;justify-content:space-between;gap:8px}.fieldList strong{overflow-wrap:anywhere;font-size:13px}.fieldList span{flex:0 0 auto;color:#176fb1;font-size:12px;font-weight:800}.metricPanel .panelTitle{justify-content:space-between}.tabs{display:flex;gap:6px;flex-wrap:wrap}.tabs button{min-height:32px;padding:0 10px;font-size:13px}.metricGrid{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px}.metricGrid div{min-height:74px;border:1px solid #dce5ee;border-radius:6px;background:#f7fafc;padding:12px}.metricGrid span{display:block;color:#607083;font-size:12px;font-weight:700}.metricGrid strong{display:block;margin-top:8px;color:#162234;font-size:24px}.panel{border:1px solid #d7e0e8;border-radius:8px;background:#fff;padding:16px;box-shadow:0 10px 28px #1f29370f}.panelTitle{display:flex;align-items:center;gap:8px;margin-bottom:14px}.panelTitle .iconOnly{margin-left:auto}label{display:grid;gap:6px;margin-bottom:12px;color:#526173;font-size:13px;font-weight:700}input,select,textarea{width:100%;min-height:42px;border:1px solid #cbd5df;border-radius:6px;padding:9px 10px;color:#172033;background:#fbfdff;outline:none}textarea{min-height:92px;resize:vertical;line-height:1.45}select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}input:focus,select:focus,textarea:focus{border-color:#1d79c2;box-shadow:0 0 0 3px #1d79c224}.row,.controls{display:flex;gap:8px;flex-wrap:wrap}button{min-height:40px;border:0;border-radius:6px;padding:0 13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#176fb1;color:#fff;font-weight:720;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button.secondary{background:#e8eef4;color:#253246}button.danger{background:#c8342b}button.iconOnly{width:32px;min-height:32px;padding:0;background:#e8eef4;color:#253246}.target{min-height:42px;margin:6px 0 14px;border-radius:6px;background:#f2f6fa;padding:11px 12px;color:#526173;font-size:13px;overflow-wrap:anywhere}.launchBanner{display:grid;gap:4px;margin-bottom:12px;border:1px solid #b9d7ed;border-radius:6px;background:#eef7ff;color:#184b73;padding:10px 12px;font-size:13px}.launchBanner strong{font-size:13px}.launchBanner span{color:#4d6880;overflow-wrap:anywhere}.launchError{margin-bottom:12px;border:1px solid #f2b7b0;border-radius:6px;background:#fff1f0;color:#9d2118;padding:10px 12px;font-size:13px;font-weight:700}.callNow{display:flex;align-items:center;gap:8px;margin-top:16px;min-height:44px;border-top:1px solid #e6edf3;padding-top:14px;color:#39485b;overflow-wrap:anywhere}.followUpForm{margin-top:16px;border-top:1px solid #e6edf3;padding-top:14px}.followUpActions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.followUpActions span,.followUpActions strong{font-size:13px}.followUpActions span{color:#10633d}.followUpActions strong{color:#9d2118}.table{display:grid;gap:10px}.task{border:1px solid #e3eaf1;border-radius:6px;padding:10px;background:#fbfdff}.task div{display:flex;justify-content:space-between;gap:10px}.task span{color:#176fb1;font-size:12px;font-weight:800}.task span[data-blacklist=true]{color:#9d2118}.task p{margin-top:6px;color:#5d6b7a;font-size:13px;overflow-wrap:anywhere}.task small{display:block;margin-top:6px;color:#7c8998;overflow-wrap:anywhere}.empty{color:#7c8998;font-size:14px}.logs{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.logs .panel{min-height:180px;max-height:280px;overflow:auto}.logs h2{margin-bottom:12px}.logs p{display:flex;gap:10px;border-bottom:1px solid #edf2f6;padding:7px 0;color:#3a4859;font-size:13px}.logs span{flex:0 0 72px;color:#7c8998}@media (max-width: 1100px){.layout,.logs{grid-template-columns:1fr}.metricGrid,.candidateGrid{grid-template-columns:repeat(2,minmax(120px,1fr))}}@media (max-width: 640px){.shell{padding:14px}.topbar{align-items:flex-start;flex-direction:column}h1{font-size:22px}.metricGrid,.inspectorForm,.candidateGrid{grid-template-columns:1fr}}
