/* — 1. PAGINA ACHTERGROND — */
.ri-perf-wrapper {
font-family: sans-serif;
box-sizing: border-box;
padding: 80px 20px;
min-height: 100vh;
background-color: #0B1120;
background-image:
linear-gradient(180deg, #0B1120 0%, rgba(11, 17, 32, 0.8) 50%, #0B1120 100%),
linear-gradient(to right, rgba(34, 211, 238, 0.03) 1px, transparent 1px),
linear-gradient(to bottom, rgba(34, 211, 238, 0.03) 1px, transparent 1px);
background-size: 100% 100%, 50px 50px, 50px 50px;
background-repeat: no-repeat, repeat, repeat;
}
.ri-container { max-width: 900px; margin: 0 auto; }
/* — 2. HERO — */
.ri-perf-hero { text-align: center; margin-bottom: 60px; }
.ri-sys-label-speed {
display: inline-flex; align-items: center; gap: 8px; padding: 6px 16px;
background: rgba(6, 182, 212, 0.1); border: 1px solid rgba(6, 182, 212, 0.3);
border-radius: 50px; color: #22d3ee; font-size: 12px; font-weight: bold;
font-family: monospace; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 24px;
}
.ri-title { color: white; font-weight: 800; font-size: clamp(32px, 5vw, 56px); line-height: 1.1; margin: 0 0 24px 0; }
.ri-gradient-speed {
background: linear-gradient(90deg, #06b6d4 0%, #ffffff 100%);
-webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent;
display: inline-block;
}
.ri-desc { color: #94a3b8; font-size: 16px; line-height: 1.6; max-width: 600px; margin: 0 auto; }
/* — 3. PLUGIN OVERRIDE (CUSTOM CSS VOOR JOUW PHP PLUGIN) — */
/* We targeten de classes uit jouw PHP code (.spa-…) */
/* De Container */
.spa-wrapper {
max-width: 100% !important;
margin-bottom: 60px;
}
/* Het Zoekformulier */
.spa-form {
background: #162033 !important;
border: 1px solid rgba(6, 182, 212, 0.3) !important;
padding: 30px !important;
border-radius: 16px !important;
display: flex; gap: 16px; flex-wrap: wrap;
box-shadow: 0 10px 30px -10px rgba(6, 182, 212, 0.15) !important;
}
/* Input Veld */
.spa-input {
flex-grow: 1;
background: #0B1120 !important;
border: 1px solid rgba(255, 255, 255, 0.1) !important;
color: white !important;
padding: 16px 20px !important;
border-radius: 8px !important;
font-size: 16px !important;
min-width: 250px;
}
.spa-input:focus { outline: none; border-color: #22d3ee !important; }
/* De Knop */
.spa-button {
padding: 16px 32px !important;
background: #06b6d4 !important; /* Cyan */
color: white !important;
border: none !important; border-radius: 8px !important;
font-weight: 800 !important; font-size: 16px !important; text-transform: uppercase; letter-spacing: 1px;
cursor: pointer; transition: all 0.2s;
}
.spa-button:hover { background: #0891b2 !important; transform: translateY(-2px); }
/* Rapport Kaart (Resultaten) */
.spa-report-card {
background: #162033 !important;
border: 1px solid rgba(255,255,255,0.1) !important;
border-radius: 16px !important;
overflow: hidden;
margin-top: 40px !important;
box-shadow: 0 20px 50px -10px rgba(0,0,0,0.3) !important;
}
/* Header in Rapport */
.spa-header {
background: #0f172a !important;
padding: 30px !important;
border-bottom: 1px solid rgba(255,255,255,0.1) !important;
}
.spa-header h2 { color: white !important; font-size: 20px !important; }
.spa-header small { color: #94a3b8 !important; }
/* Score Cirkel */
.spa-score-circle {
width: 80px !important; height: 80px !important;
font-size: 32px !important;
border: 4px solid rgba(255,255,255,0.1) !important;
box-shadow: 0 0 20px rgba(0,0,0,0.3) !important;
}
/* Kleuren aanpassen aan thema */
.spa-score-circle.bad { background-color: #ef4444 !important; color: white !important; }
.spa-score-circle.meh { background-color: #f59e0b !important; color: white !important; }
.spa-score-circle.good { background-color: #10b981 !important; color: white !important; }
/* Content Secties */
.spa-content { padding: 40px !important; }
.spa-section h3 {
color: #22d3ee !important;
border-bottom: 1px solid rgba(6, 182, 212, 0.3) !important;
padding-bottom: 15px !important;
margin-bottom: 25px !important;
font-size: 16px !important;
}
/* Stats Grid */
.spa-stats-grid { gap: 20px !important; }
.spa-stat-card {
background: #0B1120 !important;
border: 1px solid rgba(255,255,255,0.1) !important;
border-radius: 12px !important;
padding: 20px !important;
}
.spa-stat-value { color: white !important; font-size: 24px !important; margin-bottom: 8px !important; }
.spa-stat-label { color: #94a3b8 !important; font-size: 12px !important; letter-spacing: 1px; }
/* Tips / Adviezen */
.spa-tip {
background: transparent !important;
border-left-width: 4px !important;
padding: 20px !important;
margin-bottom: 16px !important;
color: #cbd5e1 !important;
border-radius: 4px !important;
}
.spa-tip.warning { border-color: #f59e0b !important; background: rgba(245, 158, 11, 0.1) !important; }
.spa-tip.info { border-color: #3b82f6 !important; background: rgba(59, 130, 246, 0.1) !important; }
.spa-tip.good { border-color: #10b981 !important; background: rgba(16, 185, 129, 0.1) !important; }
/* Foutmeldingen */
.spa-msg.error {
background: rgba(220, 38, 38, 0.1) !important;
border: 1px solid #dc2626 !important;
color: #fca5a5 !important;
}
/* — 4. UITLEG SECTIE (Metrics) — */
.ri-metrics-grid {
display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 24px;
margin-top: 60px;
}
.ri-metric-card {
background: #162033; border: 1px solid rgba(255,255,255,0.1); border-radius: 12px; padding: 24px;
}
.ri-metric-icon { color: #22d3ee; margin-bottom: 12px; }
.ri-metric-title { color: white; font-weight: bold; margin: 0 0 8px 0; font-size: 16px; }
.ri-metric-text { color: #94a3b8; font-size: 13px; line-height: 1.6; margin: 0; }
/* CTA Box */
.ri-cta-box-speed {
text-align: center; margin-top: 60px; padding: 40px;
background: rgba(6, 182, 212, 0.05); border: 1px dashed #06b6d4; border-radius: 16px;
}
Speed Diagnostics
Performance Audit
Hoe snel laadt jouw website? Voer de URL in en onze scanner analyseert direct de prestaties, caching en optimalisatiekansen.
Core Web Vitals
Google meet hoe snel je site ‘voelt’ voor de gebruiker. LCP (Laadtijd), FID (Interactie) en CLS (Stabiliteit) zijn cruciaal voor je ranking.
TTFB (Server Response)
Time to First Byte: hoe lang duurt het voordat je server antwoord geeft? Trage hosting is vaak de bottleneck.
Mobiele Score
Meer dan 60% van je bezoekers komt via mobiel. Een site die snel is op desktop maar traag op 4G, kost je klanten.
Is de uitslag teleurstellend?
Wij kunnen je score vaak binnen 48 uur verbeteren naar 90+. Wij optimaliseren afbeeldingen, caching en code.
