.speedtest-hero{padding:3rem 0;text-align:center}.speedtest-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:2.5rem 2rem;max-width:560px;margin:0 auto;box-shadow:var(--shadow-card)}.gauge-wrap{position:relative;width:220px;height:220px;margin:0 auto 1.5rem}.gauge-svg{width:100%;height:100%;transform:rotate(-135deg)}.gauge-track{fill:none;stroke:var(--color-surface-2);stroke-width:14;stroke-linecap:round}.gauge-fill{fill:none;stroke:var(--color-primary);stroke-width:14;stroke-linecap:round;stroke-dasharray:251.2;stroke-dashoffset:251.2;filter:drop-shadow(0 0 8px rgba(255,60,60,0.6));transition:stroke-dashoffset 0.4s ease}.gauge-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.gauge-value{font-size:2.75rem;font-weight:800;color:var(--color-text);line-height:1;display:block}.gauge-unit{font-size:0.85rem;color:var(--color-muted);display:block;margin-top:0.2rem}.gauge-phase{font-size:0.75rem;color:var(--color-primary);text-transform:uppercase;letter-spacing:0.08em;display:block;margin-top:0.35rem}.result-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:0.75rem;margin-top:1.5rem}@media (min-width:480px){.result-metrics{grid-template-columns:repeat(4,1fr)}}.result-metric{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:0.875rem 0.75rem;text-align:center}.result-metric-icon{color:var(--color-primary);width:20px;height:20px;margin:0 auto 0.4rem}.result-metric-label{font-size:0.7rem;text-transform:uppercase;letter-spacing:0.07em;color:var(--color-muted);margin-bottom:0.25rem}.result-metric-value{font-size:1.35rem;font-weight:800;color:var(--color-text);line-height:1}.result-metric-unit{font-size:0.7rem;color:var(--color-muted)}.start-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.6rem;padding:1rem 2.5rem;background:var(--color-primary);color:#fff;font-size:1.1rem;font-weight:700;border:none;border-radius:999px;cursor:pointer;transition:all 0.2s;box-shadow:0 0 24px rgba(255,60,60,0.35);margin-top:1rem}.start-btn:hover{background:var(--color-primary-dark);box-shadow:0 0 32px rgba(255,60,60,0.5)}.start-btn:disabled{opacity:0.6;cursor:not-allowed}.speedtest-idle .gauge-fill{stroke-dashoffset:251.2}.trust-note{font-size:0.8rem;color:var(--color-muted);margin-top:1rem}.progress-bar-wrap{background:var(--color-surface-2);border-radius:999px;height:6px;overflow:hidden;margin:1rem 0}.progress-bar-fill{height:100%;background:var(--color-primary);border-radius:999px;transition:width 0.3s ease;box-shadow:0 0 8px rgba(255,60,60,0.4);width:0%}.test-status-msg{font-size:0.875rem;color:var(--color-muted);text-align:center;min-height:1.4em}@keyframes glow-pulse{0%,100%{box-shadow:0 0 20px rgba(255,60,60,0.2)}50%{box-shadow:0 0 40px rgba(255,60,60,0.45)}}.speedtest-running .speedtest-card{animation:glow-pulse 2s ease-in-out infinite}
@media (max-width:719px){.speedtest-hero{padding:1.5rem 0}.speedtest-card{padding:1.5rem 1rem}.gauge-wrap{width:180px;height:180px}.gauge-value{font-size:2.25rem}.start-btn{width:100%;padding:0.85rem 1rem;font-size:1rem}}
@media (max-width:399px){.gauge-wrap{width:160px;height:160px}.gauge-value{font-size:1.9rem}.speedtest-card{padding:1.25rem 0.75rem}}
