.ptcl-speed-test-wrapper{font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;max-width:800px;margin:0 auto;padding:20px}.ptcl-speed-test-container{background:#fff;border-radius:12px;box-shadow:0 4px 6px rgb(0 0 0 / .1);padding:30px;border:1px solid #e1e5e9}.ptcl-header{text-align:center;margin-bottom:30px}.ptcl-header h2{color:#2c3e50;margin:0 0 8px 0;font-size:28px;font-weight:600}.ptcl-header h2 i{color:#3498db;margin-right:10px}.ptcl-header p{color:#7f8c8d;margin:0;font-size:16px}.ptcl-controls{display:flex;gap:12px;justify-content:center;margin-bottom:40px;flex-wrap:wrap}.ptcl-btn{padding:12px 24px;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:all 0.3s ease;display:flex;align-items:center;gap:8px;min-width:140px;justify-content:center}.ptcl-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.ptcl-btn-primary{background:linear(135deg,#3498db,#2980b9);color:#fff}.ptcl-btn-primary:hover:not(:disabled){background:linear(135deg,#2980b9,#2573a7);transform:translateY(-2px);box-shadow:0 4px 8px rgb(52 152 219 / .3)}.ptcl-btn-secondary{background:linear(135deg,#e74c3c,#c0392b);color:#fff}.ptcl-btn-secondary:hover:not(:disabled){background:linear(135deg,#c0392b,#a93226);transform:translateY(-2px);box-shadow:0 4px 8px rgb(231 76 60 / .3)}.ptcl-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:40px}.ptcl-result-card{background:#f8f9fa;border-radius:10px;padding:24px;text-align:center;border:2px solid #e9ecef;transition:all 0.3s ease;position:relative;overflow:hidden}.ptcl-result-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px rgb(0 0 0 / .1)}.ptcl-card-icon{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-size:24px;color:#fff}.ptcl-card-icon.download{background:linear(135deg,#27ae60,#229954)}.ptcl-card-icon.upload{background:linear(135deg,#3498db,#2980b9)}.ptcl-card-icon.ping{background:linear(135deg,#9b59b6,#8e44ad)}.ptcl-card-content h3{margin:0 0 12px 0;color:#2c3e50;font-size:18px;font-weight:600}.ptcl-speed-value{font-size:24px;font-weight:700;color:#2c3e50;margin-bottom:16px;min-height:36px}.ptcl-progress-bar{width:100%;height:8px;background:#e9ecef;border-radius:4px;overflow:hidden}.ptcl-progress-fill{height:100%;border-radius:4px;transition:width 0.3s ease}.download-progress{background:linear(90deg,#27ae60,#2ecc71)}.upload-progress{background:linear(90deg,#3498db,#5dade2)}.ping-progress{background:linear(90deg,#9b59b6,#bb8fce)}.ptcl-log{background:#f8f9fa;border-radius:10px;padding:20px;border:1px solid #e9ecef}.ptcl-log h4{margin:0 0 16px 0;color:#2c3e50;font-size:18px;display:flex;align-items:center;gap:8px}.ptcl-log h4 i{color:#3498db}.ptcl-log-content{background:#fff;border-radius:6px;padding:16px;max-height:200px;overflow-y:auto;border:1px solid #e9ecef;font-family:'Courier New',monospace;font-size:14px}.ptcl-log-entry{padding:6px 0;border-bottom:1px solid #f1f1f1;color:#2c3e50}.ptcl-log-entry:last-child{border-bottom:none}.ptcl-log-time{color:#7f8c8d;font-weight:600}@media (max-width:768px){.ptcl-speed-test-container{padding:20px}.ptcl-results{grid-template-columns:1fr}.ptcl-controls{flex-direction:column;align-items:center}.ptcl-btn{width:100%;max-width:200px}.ptcl-header h2{font-size:24px}}@media (max-width:480px){.ptcl-speed-test-wrapper{padding:10px}.ptcl-speed-test-container{padding:15px}.ptcl-result-card{padding:20px}.ptcl-speed-value{font-size:20px}}.ptcl-log-content::-webkit-scrollbar{width:6px}.ptcl-log-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.ptcl-log-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.ptcl-log-content::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.ptcl-progress-fill{transition:width 0.5s ease-in-out}@keyframes pulse{0%{opacity:1}50%{opacity:.5}100%{opacity:1}}.ptcl-result-card.testing{animation:pulse 1.5s ease-in-out infinite}