<!DOCTYPE html><html lang=”sv”><head> <meta charset=”UTF-8″> <meta name=”viewport” content=”width=device-width, initial-scale=1.0″> <title>Beräkna HK efter optimering</title> <style> body { font-family: Arial, sans-serif; background: #f9f9f9; margin: 0; padding: 0; } .container { max-width: 700px; margin: 40px auto; background: #fff; padding: 20px; border-radius: 12px; box-shadow: 0 2px 6px rgba(0,0,0,0.1); } h2 { margin-top: 0; } input { padding: 10px; border: 1px solid #ccc; border-radius: 6px; width: 200px; } button { padding: 10px 16px; border: none; border-radius: 6px; background: #000; color: #fff; cursor: pointer; } button:disabled { opacity: 0.6; cursor: not-allowed; } .result { margin-top: 20px; padding: 15px; background: #f3f3f3; border-radius: 8px; } .package { border: 1px solid #ddd; padding: 10px; border-radius: 6px; margin-top: 10px; } .error { color: red; margin-top: 10px; } </style></head><body> <div class=”container”> <h2>Uppskatta HK efter optimering</h2> <p>Skriv in ditt registreringsnummer för att få en ungefärlig uppskattning av hur mycket effekt (hk) du kan få. Detta är en demo – för exakta värden krävs riktig fordonsdata och mätning på dyno.</p> <form id=”lookupForm”> <input type=”text” id=”regnr” placeholder=”t.ex. ABC123″ /> <button type=”submit”>Beräkna</button> </form> <div id=”error” class=”error”></div> <div id=”output”></div> </div> <script> const mockVehicleDB = { ‘ABC123’: { make: ‘Volkswagen’, model: ‘Golf GTI’, year: 2018, stockHp: 230 }, ‘DEF456’: { make: ‘Volvo’, model: ‘V60 T5’, year: 2019, stockHp: 250 }, ‘GHI789’: { make: ‘BMW’, model: ‘330i’, year: 2020, stockHp: 258 }, }; const tuningPackages = [ { id: ‘stage1’, name: ‘Stage 1 (mild)’, pctMin: 10, pctMax: 25, note: ‘Mjukvara, ofta utan mekaniska ändringar’ }, { id: ‘stage2’, name: ‘Stage 2 (mer aggressiv)’, pctMin: 25, pctMax: 50, note: ‘Mjukvara + enklare hårdvara’ }, { id: ‘stage3’, name: ‘Stage 3 (prestanda)’, pctMin: 40, pctMax: 80, note: ‘Större modifieringar’ }, ]; document.getElementById(‘lookupForm’).addEventListener(‘submit’, function(e) { e.preventDefault(); const regnrInput = document.getElementById(‘regnr’).value.trim().toUpperCase(); const errorDiv = document.getElementById(‘error’); const outputDiv = document.getElementById(‘output’); errorDiv.textContent = ”; outputDiv.innerHTML = ”; if (!regnrInput) { errorDiv.textContent = ‘Skriv in ett registreringsnummer.’; return; } const vehicle = mockVehicleDB[regnrInput]; if (!vehicle) { outputDiv.innerHTML = `<div class=”result”>Registreringsnummer ej hittat i demo-databas.<br>Du kan istället mata in fabrikseffekt manuellt för att räkna på paketen.</div>`; return; } let html = `<div class=”result”> <strong>${vehicle.make} ${vehicle.model} (${vehicle.year})</strong><br> Fabrikseffekt: <strong>${vehicle.stockHp} hk</strong> </div>`; tuningPackages.forEach(pkg => { const minHp = Math.round(vehicle.stockHp * (1 + pkg.pctMin / 100)); const maxHp = Math.round(vehicle.stockHp * (1 + pkg.pctMax / 100)); html += `<div class=”package”> <div><strong>${pkg.name}</strong> – ${pkg.note}</div> <div>Uppskattat: <strong>${minHp} — ${maxHp} hk</strong></div> </div>`; }); html += `<p style=”font-size: 0.9em; margin-top: 10px; color: #555;”>Observera: detta är uppskattningar. Den faktiska ökningen beror på motorvariant, mjukvara och hårdvara. Boost Tuning rekommenderas för exakta värden.</p>`; outputDiv.innerHTML = html; }); </script></body></html>