body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.ping-page-container{background:none;min-height:calc(100vh - 134px);padding:0}.ping-page-container .ant-card{border:1px solid #e6ecf5;border-radius:16px;box-shadow:0 4px 12px #0000000d;transition:all .3s ease}.ping-page-container .ant-card:hover{box-shadow:0 6px 16px #00000014}.ping-page-container .ant-card-head{border-bottom:1px solid #e6ecf5;border-radius:16px 16px 0 0;padding:0 20px}.ping-page-container .ant-card-head-title{color:#1f2d3d;font-size:20px;font-weight:600;padding:16px 0}.ping-page-container .ant-card-body{padding:12px}.sponsor-banner-container{margin-bottom:0;margin-top:20px;padding:0 50px}.sponsor-banner{background:linear-gradient(135deg,#f5f8fb,#f8f9fb);border:1px solid #e6ecf5;border-radius:16px;box-shadow:0 4px 12px #0000000d;transition:all .3s ease}.sponsor-banner:hover{box-shadow:0 6px 16px #00000014;transform:translateY(-2px)}.sponsor-banner .ant-card-body{padding:24px 32px}.sponsor-header{align-items:center;display:flex;gap:8px;justify-content:center;margin-bottom:20px}.sponsor-heart-icon{animation:heartbeat 1.5s ease-in-out infinite;color:#ff4d4f;font-size:20px}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.sponsor-title{color:#1f1f1f;font-size:16px;font-weight:600;letter-spacing:.5px}.sponsor-list{display:flex;flex-wrap:wrap;gap:24px;justify-content:center;margin-bottom:16px}.sponsor-item{align-items:center;background:#fffffff2;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:8px;max-width:240px;min-width:180px;padding:16px 24px;transition:all .3s ease}.sponsor-item:hover{background:#fff;box-shadow:0 8px 24px #0003;transform:translateY(-4px) scale(1.02)}.sponsor-item:focus{outline:2px solid #1890ff;outline-offset:2px}.sponsor-logo-wrapper{align-items:center;display:flex;height:48px;justify-content:center;width:120px}.sponsor-logo{filter:grayscale(20%);max-height:100%;max-width:100%;object-fit:contain;transition:filter .3s ease}.sponsor-item:hover .sponsor-logo{filter:grayscale(0)}.sponsor-name-fallback{color:#1890ff;font-size:18px;font-weight:600}.sponsor-description{color:#666;font-size:12px;line-height:1.4;text-align:center}.sponsor-footer{color:#8c8c8c;font-size:12px;margin-top:8px;text-align:center}@media (max-height:700px){.sponsor-banner-container{margin-top:12px}.sponsor-banner .ant-card-body{padding:12px 16px}.sponsor-header{margin-bottom:12px}.sponsor-list{gap:10px;margin-bottom:8px}.sponsor-footer{font-size:11px;margin-top:6px}}@media (max-width:768px){.sponsor-banner-container{margin-top:12px;padding:0 24px}.sponsor-banner .ant-card-body{padding:16px 20px}.sponsor-list{gap:12px;margin-bottom:12px}.sponsor-item{max-width:180px;min-width:140px;padding:10px 14px}.sponsor-logo-wrapper{height:36px;width:90px}}@media (max-width:576px){.sponsor-banner-container{padding:0 16px}.sponsor-banner .ant-card-body{padding:14px}.sponsor-header{margin-bottom:12px}.sponsor-title{font-size:14px}.sponsor-list{flex-direction:column;gap:10px;margin-bottom:8px}.sponsor-item{max-width:100%;min-width:100%;padding:10px}.sponsor-logo-wrapper{height:32px;width:80px}.sponsor-description{font-size:11px}.sponsor-footer{font-size:11px;margin-top:6px}}@media (max-width:480px){.sponsor-banner-container{padding:0 12px}.sponsor-banner .ant-card-body{padding:12px}}@media (max-height:500px){.sponsor-banner-container{margin-top:8px}.sponsor-banner .ant-card-body{padding:10px 12px}.sponsor-header{margin-bottom:8px}.sponsor-title{font-size:13px}.sponsor-heart-icon{font-size:16px}.sponsor-list{gap:8px;margin-bottom:6px}.sponsor-item{padding:8px}.sponsor-logo-wrapper{height:28px;width:70px}.sponsor-description{font-size:10px}.sponsor-footer{font-size:10px;margin-top:4px}}@media (prefers-color-scheme:dark){.sponsor-banner{background:linear-gradient(135deg,#2d3748,#1a202c);border-color:#4a5568}.sponsor-title{color:#e2e8f0}.sponsor-item{background:#ffffff14}.sponsor-item:hover{background:#ffffff1f}.sponsor-description,.sponsor-footer{color:#a0aec0}}.App{text-align:center}.layout{min-height:100vh}::selection{background-color:#52c41a;color:#fff}.ant-btn-primary{background-color:#52c41a!important;border-color:#52c41a!important}.ant-btn-primary:focus,.ant-btn-primary:hover{background-color:#73d13d!important;border-color:#73d13d!important}.ant-btn:not(.ant-btn-primary):not(.ant-btn-link):not(.ant-btn-text):not(.ant-btn-danger):active,.ant-btn:not(.ant-btn-primary):not(.ant-btn-link):not(.ant-btn-text):not(.ant-btn-danger):focus,.ant-btn:not(.ant-btn-primary):not(.ant-btn-link):not(.ant-btn-text):not(.ant-btn-danger):hover{border-color:#52c41a!important;color:#52c41a!important}.ant-btn,.ant-btn-default,.ant-btn-lg,.ant-btn-primary{height:44px!important;line-height:42px!important;min-height:44px!important}.ant-btn>span{align-items:center;display:inline-flex;height:100%}.ant-select-arrow{margin-top:0!important;top:50%!important;transform:translateY(-50%)!important}.ant-input-focused,.ant-input-outlined:focus,.ant-input-outlined:focus-within,.ant-input-outlined:hover,.ant-input:focus,.ant-input:hover{border-color:#52c41a!important;box-shadow:0 0 0 2px #52c41a33!important;outline:0!important}input:focus,input:focus-visible,input:focus-within{border-color:#52c41a!important;outline:0!important}input:-webkit-autofill,input:-webkit-autofill:active,input:-webkit-autofill:focus,input:-webkit-autofill:hover{-webkit-text-fill-color:#1f2d3d!important;-webkit-box-shadow:inset 0 0 0 30px #fff!important;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}.ant-input-number-focused,.ant-input-number:focus,.ant-input-number:hover{border-color:#52c41a!important;box-shadow:0 0 0 2px #52c41a33!important}.ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-color:#52c41a!important}.ant-select-focused .ant-select-selector{border-color:#52c41a!important;box-shadow:0 0 0 2px #52c41a33!important}.ant-checkbox-checked .ant-checkbox-inner{background-color:#52c41a!important;border-color:#52c41a!important}.ant-checkbox-input:focus+.ant-checkbox-inner,.ant-checkbox-wrapper:hover .ant-checkbox-inner,.ant-checkbox:hover .ant-checkbox-inner{border-color:#52c41a!important}.ant-checkbox-indeterminate .ant-checkbox-inner{background-color:#b7eb8f!important;border-color:#b7eb8f!important}.ant-checkbox-indeterminate .ant-checkbox-inner:after{background-color:#b7eb8f!important}.ant-radio-checked .ant-radio-inner{border-color:#52c41a!important}.ant-radio-checked .ant-radio-inner:after{background-color:#52c41a!important}.ant-radio-input:focus+.ant-radio-inner,.ant-radio-wrapper:hover .ant-radio-inner,.ant-radio:hover .ant-radio-inner{border-color:#52c41a!important}.ant-switch-checked{background-color:#52c41a!important}.ant-pagination-item-active{border-color:#52c41a!important}.ant-pagination-item-active a{color:#52c41a!important}.ant-pagination-item:hover{border-color:#52c41a!important}.ant-pagination-item:hover a{color:#52c41a!important}.ant-pagination-next:hover .ant-pagination-item-link,.ant-pagination-prev:hover .ant-pagination-item-link{border-color:#52c41a!important;color:#52c41a!important}.ant-menu-item-active,.ant-menu-item:hover,.ant-menu-submenu-active,.ant-menu-submenu-title:hover,.ant-menu:not(.ant-menu-inline) .ant-menu-submenu-open{color:#52c41a!important}.ant-menu-item-active:after,.ant-menu-item:hover:after,.ant-menu-submenu-active:after,.ant-menu-submenu-title:hover:after,.ant-menu:not(.ant-menu-inline) .ant-menu-submenu-open:after{border-bottom-color:#52c41a!important}.ant-menu-item-selected{color:#52c41a!important}.ant-menu-item-selected:after{border-bottom-color:#52c41a!important}.ant-menu-horizontal>.ant-menu-item-active,.ant-menu-horizontal>.ant-menu-item-open,.ant-menu-horizontal>.ant-menu-item-selected,.ant-menu-horizontal>.ant-menu-item:hover,.ant-menu-horizontal>.ant-menu-submenu-active,.ant-menu-horizontal>.ant-menu-submenu-open,.ant-menu-horizontal>.ant-menu-submenu-selected,.ant-menu-horizontal>.ant-menu-submenu:hover{border-bottom-color:#52c41a!important;color:#52c41a!important}.ant-menu-horizontal>.ant-menu-item a:hover,.ant-menu-horizontal>.ant-menu-item-selected a{color:#52c41a!important}.ant-checkbox-wrapper:hover{background-color:#f6ffed!important}.ant-checkbox-input:focus+.ant-checkbox-inner{box-shadow:0 0 0 2px #52c41a33!important}.app-header{align-items:center;display:flex;justify-content:space-between;padding:0 50px;position:fixed;transition:all .3s ease;width:100%;z-index:1000}.app-header.light{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffffd9;border-bottom:1px solid #0000000d;box-shadow:0 4px 20px #0000000d}.header-logo-wrapper{cursor:pointer;transition:transform .3s ease}.header-logo-wrapper:hover{transform:scale(1.02)}.header-menu{-webkit-overflow-scrolling:touch;-ms-overflow-style:none;background:#0000!important;border-bottom:none!important;flex:1 1;font-weight:500;justify-content:flex-end;min-width:400px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.header-menu::-webkit-scrollbar{display:none}.app-header.light .ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-active:after,.app-header.light .ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-open:after,.app-header.light .ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-selected:after,.app-header.light .ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item:hover:after,.app-header.light .ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-active:after,.app-header.light .ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-open:after,.app-header.light .ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-selected:after,.app-header.light .ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu:hover:after{border-bottom:2px solid #52c41a}.app-header.light .ant-menu-horizontal>.ant-menu-item-selected a,.app-header.light .ant-menu-horizontal>.ant-menu-item-selected a:hover{color:#52c41a;font-weight:600}.header-menu .ant-menu-overflow-item-rest,.header-menu .ant-menu-overflow-item-rest .ant-menu-submenu-title{color:#52c41a!important;font-weight:600}.header-menu .ant-menu-overflow-item-rest .ant-menu-submenu-title{padding:0 12px!important}.header-menu .ant-menu-overflow-item-rest .anticon,.header-menu .ant-menu-overflow-item-rest svg{fill:currentColor;color:#52c41a!important;font-size:18px!important;height:18px!important;width:18px!important}.header-menu .ant-menu-overflow-item-rest:hover .ant-menu-submenu-title,.header-menu .ant-menu-overflow-item-rest:hover .anticon,.header-menu .ant-menu-overflow-item-rest:hover svg{color:#73d13d!important}.ant-table-small{font-size:12px}.hop-table .ant-table-tbody>tr>td{padding:4px 8px}.test-card{margin-bottom:16px}.test-card .ant-card-head-title{font-size:18px;font-weight:600}.node-selection{border:1px solid #d9d9d9;border-radius:6px;max-height:200px;overflow-y:auto;padding:8px}.progress-section{background:#f0f2f5;border-radius:6px;margin:16px 0;padding:16px}.result-table .ant-table{font-size:13px}.monitor-container{display:flex;flex-direction:column;gap:16px}.monitor-control-card .ant-card-head-title,.monitor-result-card .ant-card-head-title{font-size:18px;font-weight:600}.monitor-result-card .ant-card-body{padding:0}.monitor-table-wrapper{border-radius:0 0 8px 8px;overflow:hidden}.monitor-form{display:flex;flex-direction:column;gap:16px}.monitor-form .ant-form-item{margin-bottom:0}.monitor-form-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px}.monitor-form-target{flex:1 1;min-width:240px}.monitor-form-interval{width:140px}.monitor-form-actions{display:flex;gap:12px}.monitor-form-item-nodes,.monitor-node-wrapper{align-items:flex-start;display:flex;width:100%}.monitor-node-selector{display:flex;flex-direction:column;gap:8px;max-height:160px;max-width:100%;overflow-y:auto;padding:4px 0;width:100%}.monitor-node-selector .ant-checkbox-group{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px 16px}.monitor-node-toolbar{margin-top:8px}.monitor-status-text{color:#555;display:inline-block;margin-left:12px}.monitor-table .ant-table-thead>tr>th{background:#f5f7fa;border-bottom:1px solid #e3e6ed;color:#2f3b52;font-weight:600}.monitor-table .ant-table-tbody>tr>td{padding:12px 16px;vertical-align:middle}.monitor-table .ant-table-tbody>tr:nth-child(2n)>td{background:#fafafa}.monitor-table .ant-table-tbody>tr:hover>td{background:#f6ffed}.monitor-chart-placeholder{color:#999}.monitor-chart-wrapper{overflow:hidden}.monitor-chart-bar{align-items:flex-end;display:flex;gap:0}.monitor-chart-segment{display:inline-block}.monitor-geo{display:flex;flex-direction:column;gap:2px}.monitor-geo-header{align-items:center;display:flex;gap:8px}.monitor-geo-indicator{background:#d9d9d9;border-radius:50%;box-shadow:0 0 0 2px #0000000a;display:inline-block;height:8px;width:8px}.monitor-geo-indicator--ok{background:#52c41a}.monitor-geo-indicator--fail{background:#ff4d4f}.monitor-geo-indicator--pending{background:#d9d9d9}.monitor-geo-location{color:#1f2d3d;font-weight:600}.monitor-geo-name{color:#4a5568;font-size:12px}.monitor-geo-meta{color:#8894a0;font-size:12px}.monitor-geo-error{color:#d4380d;font-size:12px}.monitor-table .ant-table,.monitor-table .ant-table-container,.monitor-table .ant-table-content,.monitor-table-wrapper,.monitor-table.ant-table-wrapper{width:100%!important}.monitor-table .ant-table-content>table{table-layout:auto!important;width:100%!important}.monitor-table-node-column{min-width:180px}.monitor-table-target-column{min-width:140px}.monitor-table-status-column{min-width:70px}.monitor-table-stats-column{min-width:280px;white-space:nowrap}@media (max-width:768px) and (orientation:portrait){.monitor-table .monitor-col-hide-portrait,.monitor-table td.monitor-col-hide-portrait,.monitor-table th.monitor-col-hide-portrait{display:none!important}}@media (max-width:992px) and (orientation:landscape){.monitor-table .monitor-col-hide-landscape,.monitor-table td.monitor-col-hide-landscape,.monitor-table th.monitor-col-hide-landscape{display:none!important}}.ping-test-container{display:flex;flex-direction:column;gap:20px}.ping-card-header{align-items:center;display:flex;gap:12px}.ping-card-icon{color:#52c41a;font-size:24px}.ping-card-title{color:#1f2d3d;font-size:20px;font-weight:600}.ping-control-card .ant-card-head,.ping-result-card .ant-card-head{border-bottom:1px solid #e6ecf5;padding:0 20px}.ping-control-card .ant-card-head-title,.ping-result-card .ant-card-head-title{color:#1f2d3d;font-size:20px;font-weight:600;padding:16px 0}.ping-form{display:flex;flex-direction:column;gap:16px;width:100%}.ping-form .ant-form-item{margin-bottom:0;width:100%}.ping-form-row{align-items:center;display:flex;flex-wrap:nowrap;gap:16px;width:100%}.ping-form-row .ant-form-item{margin-bottom:0;width:auto}.ping-form-row .ping-form-target{flex:1 1;min-width:200px}.ping-form-row .ping-form-actions,.ping-form-row .ping-form-method{flex:0 0 auto}.ping-form-row .ping-form-actions{display:flex;justify-content:flex-end}.ping-form-row .ping-form-port{flex:0 0 auto;max-width:200px}.ping-form-row .ping-form-count,.ping-form-row .ping-form-interval,.ping-form-row .ping-form-node-select{flex:0 0 auto}.ping-form-row .ping-form-port .ant-input-number,.ping-form-row .ping-form-port .ant-input-number-input-wrap,.ping-port-input.ant-input-number{border-radius:0 8px 8px 0;height:44px;width:100%}.ping-form-row .ping-form-port .ant-input-number-input-wrap{align-items:center;display:flex}.ping-port-input .ant-input-number-input{height:44px;line-height:44px;padding:0 12px}.ping-input-error{border-color:#ff4d4f!important;box-shadow:0 0 0 2px #ff4d4f33!important}.ping-input-error input{border-color:#0000;box-shadow:none}.ping-form-row .ping-form-port .ant-input-number-group-addon{border-radius:8px 0 0 8px;height:44px;line-height:44px}.ping-form-row .ping-form-count .ant-select,.ping-form-row .ping-form-count .ant-select-selector,.ping-form-row .ping-form-interval .ant-select,.ping-form-row .ping-form-interval .ant-select-selector,.ping-form-row .ping-form-node-select .ant-select,.ping-form-row .ping-form-node-select .ant-select-selector{border-radius:8px;height:44px;width:100%}.ping-form-row .ping-form-count .ant-select-selection-item,.ping-form-row .ping-form-count .ant-select-selection-placeholder,.ping-form-row .ping-form-interval .ant-select-selection-item,.ping-form-row .ping-form-interval .ant-select-selection-placeholder,.ping-form-row .ping-form-node-select .ant-select-selection-item,.ping-form-row .ping-form-node-select .ant-select-selection-placeholder{align-items:center;display:flex;line-height:44px}.ping-form-row .ping-form-method .ant-select,.ping-form-row .ping-form-method .ant-select-selector{border-radius:8px;height:44px;width:100%}.ping-form-row .ping-form-method .ant-select-selector .ant-select-selection-item,.ping-form-row .ping-form-method .ant-select-selector .ant-select-selection-placeholder{line-height:44px}.ping-form-row .ping-form-method .ant-select-selection-item,.ping-form-row .ping-form-method .ant-select-selection-placeholder{align-items:center;display:flex}.ping-form-row .ping-test-button{width:100%}@media (max-width:768px){.ping-form-row{flex-wrap:wrap;gap:12px}.ping-form-row .ping-form-target{flex:1 1 100%;min-width:0;width:100%}.ping-form-row .ping-form-actions,.ping-form-row .ping-form-count,.ping-form-row .ping-form-interval,.ping-form-row .ping-form-method,.ping-form-row .ping-form-node-select,.ping-form-row .ping-form-port{flex-basis:calc(50% - 6px);flex-grow:1;flex-shrink:1;min-width:0}.ping-form-row .ping-form-actions{width:auto}.ping-test-button{flex:1 1;min-width:0;width:100%}}.ping-form-row:nth-child(2),.ping-form-row:nth-child(2)>div{width:100%!important}.ping-form-target{box-sizing:border-box;flex:1 1;max-width:100%;min-width:280px}.ping-target-input{border:1px solid #d6dbe6;border-radius:8px;box-shadow:0 2px 4px #0000000d;box-sizing:border-box;height:44px;transition:all .3s;width:100%}.ping-target-input:focus,.ping-target-input:hover{border-color:#52c41a;box-shadow:0 0 0 2px #52c41a33}.ping-form-actions{align-items:flex-end;display:flex;gap:12px}.ping-test-button{border-radius:8px;box-shadow:0 2px 0 rgba(0,0,0,.045);font-weight:500;height:44px;min-width:120px;transition:all .3s}.ping-test-button:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.ping-test-button--single{background:#52c41a;border-color:#52c41a}.ant-btn.ping-test-button--stop:active,.ant-btn.ping-test-button--stop:focus,.ant-btn.ping-test-button--stop:hover,.ping-test-button--stop,.ping-test-button--stop.ant-btn,.ping-test-button--stop.ant-btn-default,.ping-test-button--stop.ant-btn-default:active,.ping-test-button--stop.ant-btn-default:focus,.ping-test-button--stop.ant-btn-default:hover,.ping-test-button--stop.ant-btn-default:not(:disabled):active,.ping-test-button--stop.ant-btn-default:not(:disabled):focus,.ping-test-button--stop.ant-btn-default:not(:disabled):hover,.ping-test-button--stop.ant-btn:active,.ping-test-button--stop.ant-btn:focus,.ping-test-button--stop.ant-btn:hover{background:#faad14!important;background-color:#faad14!important;border:1px solid #ffffff4d!important;box-shadow:none!important;color:#fff!important;outline:none!important}.ant-btn.ping-test-button--stop:hover .anticon,.ant-btn.ping-test-button--stop:hover span,.ping-test-button--stop .anticon,.ping-test-button--stop span,.ping-test-button--stop:focus .anticon,.ping-test-button--stop:focus span,.ping-test-button--stop:hover .anticon,.ping-test-button--stop:hover span{color:#fff!important}.ping-form-item-nodes{align-items:flex-start;display:flex;margin-bottom:0!important;width:100%}#root>div>main>div>div>div>div.ant-card.ant-card-bordered.ping-control-card.css-dev-only-do-not-override-1v28nim>div.ant-card-body>form>div:nth-child(2)>div>div,.ping-form-item-nodes .ant-form-item-control,.ping-form-item-nodes .ant-form-item-control-input,.ping-form-item-nodes .ant-form-item-control-input-content{width:100%!important}.ping-form-item-nodes .ant-form-item-row{flex:1 1 100%;width:100%!important}.ping-form-item-nodes .ant-form-item-row>.ant-form-item-control,.ping-form-item-nodes .ant-form-item-row>.ant-form-item-label{width:100%!important}.ping-form-item-nodes .ant-col{max-width:100%;width:100%}.ping-form-item-nodes .ant-select{width:100%}.ping-form-item-nodes .ant-select-selector{border-radius:8px!important;height:44px!important}.ping-form-item-nodes .ant-select-selector .ant-select-selection-search-input{height:42px!important}.ping-form-item-nodes .ant-select-selector .ant-select-selection-item,.ping-form-item-nodes .ant-select-selector .ant-select-selection-placeholder{align-items:center;display:flex;line-height:42px!important}.ping-node-wrapper{align-items:flex-start;display:flex;flex:1 1 100%;max-width:100%;width:100%}.ping-node-selector{background:#fff;border:1px solid #e6ecf5;border-radius:12px;box-shadow:0 2px 6px #00000008;box-sizing:border-box;min-height:auto;padding:16px;width:100%}.ping-node-selector-header{border-bottom:none;margin-bottom:0;padding-bottom:0;width:100%}.ping-node-selection-row,.ping-node-selector-header{align-items:center;display:flex;justify-content:flex-start}.ping-node-selection-row{flex-wrap:wrap;gap:20px;min-height:32px}.ping-node-selection-row .ant-checkbox-wrapper{border-radius:8px;font-size:14px;font-weight:500;margin:0;padding:8px 16px;transition:background-color .2s}.ping-node-selection-row .ant-checkbox-wrapper:hover{background-color:#f6ffed}.ping-node-count{color:#6b7a90;font-size:14px}.ping-node-list{box-sizing:border-box;display:block;max-height:180px;overflow-y:auto;padding:4px 0;width:100%}.ping-node-list .ant-checkbox-group{display:flex;display:flex!important;flex-direction:row;flex-direction:row!important;flex-wrap:wrap;flex-wrap:wrap!important;gap:12px 20px;justify-content:flex-start;margin:0!important;padding:0!important;width:100%}.ping-node-list .ant-checkbox-wrapper{-webkit-margin-start:0!important;align-items:center!important;background-color:initial;border-radius:8px;box-sizing:border-box;display:flex!important;flex-basis:calc(20% - 16px);flex-grow:1;flex-shrink:1;justify-content:flex-start;margin-inline-start:0!important;margin:0;margin-right:0!important;min-width:140px;padding:8px 12px;transition:all .2s}.ping-node-list .ant-checkbox-wrapper:hover{background:#f6ffed;border-radius:8px}.ping-node-list .ant-checkbox-wrapper .ant-checkbox{flex-shrink:0}.ping-node-list .ant-checkbox-wrapper .ant-checkbox+span{flex:1 1;overflow:hidden;padding-left:8px;text-overflow:ellipsis;white-space:nowrap}.ping-result-layout{align-items:flex-start;display:flex;gap:24px;width:100%}.ping-map-panel{background:linear-gradient(150deg,#f6ffed,#fff 65%);border:1px solid #e6ecf5;border-radius:16px;box-shadow:0 12px 30px #0f172a14;flex:0 1 50%;flex-direction:column;max-width:50%;min-width:300px;padding:12px 12px 0}.ping-map-chart,.ping-map-panel{display:flex;overflow:hidden;position:relative}.ping-map-chart{width:100%}.ping-map-header{display:flex;flex-direction:column;flex-shrink:0;gap:4px}.ping-map-legend{align-items:center;background:#ffffffe6;border-top:1px solid #e6ecf5;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding:10px 12px}.ping-map-legend-item{align-items:center;display:flex;gap:6px}.ping-map-legend-color{border-radius:3px;flex-shrink:0;height:14px;width:14px}.ping-map-legend-label{color:#4a5568;font-size:12px;white-space:nowrap}.ping-map-title{color:#1f2d3d;font-size:16px;font-weight:600}.ping-map-subtitle{color:#6b7a90;font-size:12px}.ping-map-empty{align-items:center;background:#fff;border-radius:12px;display:flex;flex:1 1;justify-content:center;min-height:300px}.ping-map-chart .echarts-for-react{height:100%!important;width:100%!important}.ping-table-panel{display:flex;flex:1 1 50%;flex-direction:column;max-width:50%;min-height:500px;min-width:420px;min-width:0}.ping-table-wrapper{background:#fff;border:1px solid #e6ecf5;border-radius:16px;box-shadow:0 4px 12px #0000000d;display:flex;flex:1 1;flex-direction:column;min-height:400px;overflow-x:auto;overflow-y:hidden}.ping-table-panel .ant-table-container{border:none;border-radius:0;flex:1 1}.ping-table-panel .ant-table-thead>tr>th{background:#f5f7fa;border-bottom:1px solid #e3e6ed;color:#2f3b52;font-weight:600;padding:14px 18px}.ping-table-panel .ant-table-tbody>tr>td{border-bottom:1px solid #f0f2f5;padding:14px 18px}.ping-table-panel .ant-table-tbody>tr:nth-child(2n)>td{background:#fafafa}.ping-table-panel .ant-table-tbody>tr:hover>td{background:#f6ffed}.ping-table-panel .ant-table-tbody>tr>td.ping-table-stats-column{min-width:320px;white-space:nowrap}.ping-node-info{display:flex;flex-direction:column;gap:2px}.ping-node-name{color:#1f2d3d;font-weight:600}.ping-node-location{color:#4a5568;font-size:12px}.ping-node-meta{color:#8894a0;font-size:11px}.ping-stats-preview,.ping-target-preview{color:#bfbfbf;font-style:italic}.ping-stats-content{display:flex;flex-direction:column;gap:4px}.ping-stats-row{align-items:center;display:flex;flex-wrap:wrap;gap:4px 8px}.ping-stats-label{color:#6b7a90;font-size:12px}.ping-stats-value{color:#1f2d3d;font-size:12px;font-weight:500}.ping-stats-error{color:#ff4d4f;font-size:12px}.ping-results-table .ant-table-tbody>tr>td{transition:background .2s}.ping-latency-chip{align-items:center;border-radius:999px;box-shadow:inset 0 0 0 1px #ffffff4d;color:#fff;display:inline-flex;font-size:12px;font-weight:600;justify-content:center;min-width:72px;padding:4px 12px}.ping-latency-chip--fail{background:#bfbfbf;color:#333}.ping-latency-chip--pending{background:#8c8c8c;color:#fff}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.ping-control-card{animation:fadeIn .3s ease-out}.ping-result-card{animation:fadeIn .5s ease-out}.ping-map-panel{animation:slideInLeft .4s ease-out}.ping-table-panel{animation:slideInRight .4s ease-out}.ping-loading-spin{align-items:center;display:flex;flex-direction:column;gap:12px;justify-content:center;padding:24px}.ping-loading-text{color:#6b7a90;font-size:14px}.ping-progress-container{margin-top:8px;width:100%}.ping-progress-info{display:flex;font-size:14px;justify-content:space-between;margin-bottom:6px}.ping-progress-text{color:#52c41a;font-weight:500}.ping-progress-percent{color:#6b7a90;font-weight:500}.ping-progress-bar{background-color:#f0f2f5;border-radius:4px;height:8px;overflow:hidden;width:100%}.ping-progress-fill{background:linear-gradient(90deg,#52c41a,#73d13d);border-radius:4px;height:100%;transition:width .3s ease}@media (max-width:1200px){.ping-result-layout{gap:20px}.ping-map-panel,.ping-table-panel{min-width:380px}}@media (max-width:992px){.ping-result-layout{flex-direction:column;gap:16px}.ping-map-panel,.ping-table-panel{max-width:100%;min-width:100%}.ping-table-panel{flex:1 1}}@media (max-width:768px){.ping-result-layout{gap:16px}.ping-map-panel{min-width:100%;padding:16px}.ping-table-panel{min-width:100%}.ping-table-wrapper{padding:16px}.ping-map-title{font-size:15px}.ping-table-wrapper{border-radius:12px}.ping-control-card .ant-card-body{padding:16px}}@media (max-width:576px){.ping-result-layout{gap:12px}.ping-map-panel{min-width:100%;padding:12px}.ping-table-panel{min-width:100%}.ping-table-wrapper{padding:12px}.ping-table-panel .ant-table-tbody>tr>td,.ping-table-panel .ant-table-thead>tr>th{padding:10px 12px}.ping-control-card .ant-card-body{padding:12px}}@media (max-width:480px){.ping-result-layout{gap:10px}.ping-map-panel{padding:10px}.ping-table-panel{padding:0}.ping-table-wrapper{padding:10px}.ping-map-title{font-size:14px}.ping-map-subtitle{font-size:11px}}@media (max-width:768px){.layout .ant-layout-content{margin-top:64px!important;padding:0 24px!important}.layout .ant-layout-content>div{margin-top:12px!important;min-height:280px!important}.app-header{padding:0 24px}.header-menu{flex:1 1;min-width:auto}.header-menu .ant-menu-item{font-size:14px;padding:0 12px!important}.header-logo-wrapper{margin-right:12px}.layout .ant-layout-footer{padding:20px 24px!important}}@media (max-height:700px){.layout .ant-layout-content{margin-top:64px!important}.layout .ant-layout-content>div{margin-top:8px!important;min-height:200px!important}.ping-test-container{gap:12px}}@media (max-width:576px){.layout .ant-layout-content{padding:0 16px!important}.layout .ant-layout-content>div{margin-top:10px!important;min-height:240px!important}.app-header{padding:0 16px}.header-menu .ant-menu-item{font-size:13px;padding:0 10px!important}.header-menu .ant-menu-item .anticon{font-size:14px}.header-menu .ant-menu-overflow-item-rest .anticon,.header-menu .ant-menu-overflow-item-rest svg{font-size:20px!important;height:20px!important;width:20px!important}.header-logo-wrapper{margin-right:8px;transform:scale(.9)}.layout .ant-layout-footer{padding:20px 16px!important}.ping-form-row{gap:8px}.ping-form-target{min-width:0;width:100%}.ping-test-button{min-width:100px}.ping-control-card .ant-card-body{padding:16px}.ping-test-container{gap:14px}}@media (max-width:480px){.layout .ant-layout-content{padding:0 12px!important}.layout .ant-layout-content>div{margin-top:8px!important;min-height:200px!important}.app-header{gap:4px;padding:0 8px}.header-menu{display:flex!important;flex:1 1;min-width:0;overflow-x:auto;scrollbar-width:none;white-space:nowrap}.header-menu::-webkit-scrollbar{display:none}.header-menu.ant-menu-horizontal{border-bottom:none;line-height:62px}.header-menu .ant-menu-item{align-items:center;display:inline-flex;flex-shrink:0;font-size:11px;padding:0 6px!important}.header-menu .ant-menu-item .anticon{font-size:12px;margin-right:3px}.header-menu .ant-menu-item span{white-space:nowrap}.header-menu .ant-menu-overflow-item-rest .anticon,.header-menu .ant-menu-overflow-item-rest svg{font-size:22px!important;height:22px!important;width:22px!important}.header-logo-wrapper{flex-shrink:0;margin-right:4px;transform:scale(.8);transform-origin:left center}.app-header:after{background:linear-gradient(270deg,#ffffffe6,#0000);bottom:0;content:"";pointer-events:none;position:absolute;right:0;top:0;width:30px}.layout .ant-layout-footer{padding:20px 12px!important}.ping-form-row{gap:8px}.ping-form-actions{flex-direction:column;gap:8px;width:100%}.ping-test-button{min-width:0;width:100%}.ping-test-button--multiple,.ping-test-button--single{width:100%}.ant-btn-lg.ping-test-button,.ant-btn.ping-test-button{padding:0 15px}.ping-card-title{font-size:16px}.ping-control-card .ant-card-body{padding:12px}.ping-test-container{gap:10px}}@media (max-height:500px){.layout .ant-layout-content>div{margin-top:6px!important;min-height:150px!important}.ping-test-container{gap:8px}.ping-control-card .ant-card-body,.ping-result-card .ant-card-body{padding:12px}}