/* ParsUptime Speedtest - class-based minimal */
.parsu-speedtest-wrap{--st-radius:16px;--st-gap:12px;--st-border:#E2EDFE;--st-bg:var(--bg-card,#fff);--st-text:var(--text-body,#111827);--st-muted:var(--text-muted,#6b7280);--st-primary:var(--primary-color,#2563eb);background:var(--st-bg);border:1px solid var(--st-border);border-radius:var(--st-radius);padding:clamp(12px,2vw,16px);box-shadow:0 4px 14px rgba(0,0,0,.04)}
.parsu-st-header{display:flex;gap:var(--st-gap);align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:10px}
.parsu-st-title{font-size:clamp(16px,2.2vw,20px);margin:0;color:var(--st-text)}
.parsu-st-actions{display:flex;gap:8px}
.parsu-st-btn{appearance:none;border:1px solid var(--st-border);background:#f8fafc;color:var(--st-text);padding:8px 12px;border-radius:12px;cursor:pointer;transition:all .2s}
.parsu-st-btn[disabled]{opacity:.5;cursor:not-allowed}
.parsu-st-btn:hover:not([disabled]){border-color:var(--st-primary);box-shadow:0 2px 6px rgba(37,99,235,.15)}
.parsu-st-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0}
.parsu-st-card{background:#f9fbff;border:1px dashed var(--st-border);border-radius:12px;padding:10px 12px;text-align:center}
.parsu-st-label{color:var(--st-muted);font-size:12px}
.parsu-st-value{font-size:clamp(18px,2.6vw,24px);font-variant-numeric:tabular-nums}
.parsu-st-value small{font-size:12px;color:var(--st-muted);margin-inline-start:4px}
.parsu-st-progress{height:10px;background:#eff4ff;border-radius:999px;overflow:hidden;margin-top:6px}
.parsu-st-progress-bar{height:100%;width:0%;background:var(--st-primary);transition:width .2s}
.parsu-st-status{margin-top:6px;color:var(--st-muted);font-size:13px}

/* Advanced controls */
.parsu-st-advanced details{margin-top:8px}
.parsu-st-advanced summary{cursor:pointer;color:var(--st-text);font-weight:600;margin-bottom:6px}
.parsu-st-adv-grid{display:grid;grid-template-columns:repeat(4, minmax(0,1fr));gap:10px;margin-top:6px}
.parsu-st-adv-grid label{display:flex;flex-direction:column;font-size:12px;color:var(--st-muted);background:#f9fbff;border:1px dashed var(--st-border);border-radius:10px;padding:8px}
.parsu-st-adv-grid input,.parsu-st-adv-grid select{margin-top:6px;padding:6px 8px;border:1px solid var(--st-border);border-radius:8px;background:white;color:var(--st-text)}
.parsu-st-note{font-size:12px;color:var(--st-muted);margin-top:8px}
@media (max-width:780px){.parsu-st-adv-grid{grid-template-columns:repeat(2, minmax(0,1fr));}}
