.app{height:100vh;background:linear-gradient(180deg,#f5f5f7,#e8e8ed);display:flex;flex-direction:column;color:#333;overflow:hidden;box-sizing:border-box}.header{flex-shrink:0;text-align:center;padding:20px 20px 6px}.title{font-size:22px;font-weight:600;color:#1a1a1a}.desc{font-size:12px;color:#999;margin-top:4px;letter-spacing:.5px}.orb-container{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 0}.orb-canvas{width:200px;height:200px}.orb-label{margin-top:8px;font-size:14px;color:#888;height:20px}.metrics-bar{display:flex;justify-content:center;gap:16px;padding:8px 16px;background:#ffffff0d;border-radius:12px;margin:0 auto 8px;max-width:500px;flex-wrap:wrap}.metric-item,.metric-total{display:flex;align-items:center;gap:4px}.metric-label{font-size:11px;color:#888;font-weight:600;text-transform:uppercase}.metric-value{font-size:13px;color:#4fc3f7;font-weight:700;font-variant-numeric:tabular-nums}.metric-detail{font-size:11px;color:#666}.metric-total .metric-label{color:#aaa}.metric-total .metric-value{color:#81c784}.mcp-msg{background:#7c6cf00d;border:1px solid rgba(124,108,240,.12);border-radius:10px;padding:0;overflow:hidden}.mcp-inline-header{display:flex;align-items:center;padding:8px 12px;cursor:pointer;gap:6px;font-size:13px;-webkit-user-select:none;user-select:none}.mcp-inline-header:hover{background:#7c6cf00f}.mcp-inline-label{font-size:10px;font-weight:700;color:#fff;background:#7c6cf0;padding:1px 6px;border-radius:4px;letter-spacing:.5px}.mcp-status{width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0}.mcp-status.ok{background:#e8f5e9;color:#2e7d32}.mcp-status.error{background:#ffebee;color:#c62828}.mcp-tool-name{font-weight:600;color:#5a4dc7;font-size:13px;font-family:SF Mono,Consolas,monospace}.mcp-time{margin-left:auto;color:#aaa;font-size:11px}.mcp-expand{color:#999;font-size:14px;width:18px;text-align:center}.mcp-detail{padding:0 12px 10px;border-top:1px solid rgba(124,108,240,.08)}.mcp-section{margin-top:6px}.mcp-label{font-size:10px;font-weight:600;color:#888;margin-bottom:3px;text-transform:uppercase;letter-spacing:.5px}.mcp-json{background:#1e1e2e;color:#cdd6f4;padding:8px 10px;border-radius:6px;font-size:11px;font-family:SF Mono,Consolas,Courier New,monospace;line-height:1.4;overflow-x:auto;margin:0;white-space:pre-wrap;word-break:break-all;max-height:150px;overflow-y:auto}.mcp-json::-webkit-scrollbar{width:4px;height:4px}.mcp-json::-webkit-scrollbar-thumb{background:#555;border-radius:2px}.transcript{flex:1;min-height:60px;overflow-y:auto;margin:0 20px;padding:16px;background:#fff9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:16px;border:1px solid rgba(0,0,0,.06)}.transcript::-webkit-scrollbar{width:3px}.transcript::-webkit-scrollbar-thumb{background:#ccc;border-radius:2px}.transcript-empty{text-align:center;color:#aaa;font-size:14px;padding:30px 0}.msg{margin-bottom:14px}.msg-sender{font-size:11px;font-weight:600;margin-bottom:2px;color:#aaa}.msg.agent .msg-sender{color:#7c6cf0}.msg.user .msg-sender{color:#3aac6a}.msg-content{font-size:14px;line-height:1.6;color:#333}.msg.interim .msg-content{color:#999}.msg.interim.agent .msg-content{color:#a99cf0}.msg.interim.user .msg-content{color:#8dd4a8}.footer{flex-shrink:0;padding:12px 20px;padding-bottom:max(12px,env(safe-area-inset-bottom))}.dial-row{display:flex;flex-direction:column;align-items:center;gap:16px}.dial-settings{width:100%;max-width:360px;display:flex;flex-direction:column;gap:10px}.input-field{width:100%;padding:10px 14px;border-radius:10px;border:1px solid #ddd;background:#fff;font-size:14px;color:#333;outline:none;transition:border-color .2s;box-sizing:border-box}.input-field:focus{border-color:#7c6cf0}.error-text{color:#e74c3c;font-size:13px}.call-btn{width:64px;height:64px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .15s,box-shadow .2s}.call-btn:active{transform:scale(.92)}.call-btn:disabled{opacity:.5;cursor:not-allowed}.call-start{background:#34c759;color:#fff;box-shadow:0 4px 20px #34c75966}.call-start:hover:not(:disabled){box-shadow:0 6px 28px #34c75980}.call-end{background:#ff3b30;color:#fff;box-shadow:0 4px 20px #ff3b3066}.call-end:hover{box-shadow:0 6px 28px #ff3b3080}.connected-controls{display:flex;flex-direction:column;align-items:center;gap:10px}.text-input-row{display:flex;width:100%;max-width:400px;gap:8px}.text-input-field{flex:1;min-width:0;padding:8px 14px;border-radius:20px;border:1px solid #ddd;background:#fff;font-size:14px;color:#333;outline:none;transition:border-color .2s;box-sizing:border-box}.text-input-field:focus{border-color:#7c6cf0}.send-btn{width:40px;height:40px;border-radius:50%;border:none;background:#7c6cf0;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .15s;flex-shrink:0}.send-btn:hover:not(:disabled){background:#6b5ce0}.send-btn:active{transform:scale(.92)}.send-btn:disabled{opacity:.4;cursor:not-allowed}.geo-row{width:100%;max-width:400px;display:flex;flex-direction:column;gap:6px;padding:8px 12px;background:#ffffff80;border-radius:12px;border:1px solid rgba(0,0,0,.06);box-sizing:border-box}.geo-inputs{display:flex;gap:8px}.geo-input{flex:1;min-width:0;padding:6px 10px;border-radius:8px;border:1px solid #ddd;background:#fff;font-size:13px;color:#333;outline:none;transition:border-color .2s;box-sizing:border-box}.geo-input:focus{border-color:#3aac6a}.geo-actions{display:flex;gap:8px}.geo-btn{flex:1;padding:6px 12px;border-radius:8px;border:1px solid #3aac6a;background:#3aac6a14;color:#3aac6a;font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;transition:all .2s}.geo-btn:hover:not(:disabled){background:#3aac6a26}.geo-btn:disabled{opacity:.4;cursor:not-allowed}.geo-btn.active{background:#3aac6a;color:#fff;border-color:#3aac6a}.geo-status{font-size:11px;color:#888;text-align:center}.call-row{display:flex;align-items:center;justify-content:center;gap:32px}.round-btn{width:50px;height:50px;border-radius:50%;border:none;background:#0000000f;color:#555;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.round-btn:hover{background:#0000001a}.mute-btn.active{background:#ff3b30;color:#fff}
