@import url('https://fonts.googleapis.com/css2?family=Noto+Nastaliq+Urdu:wght@400;700&display=swap'); #stijob-placevalue-wrapper { font-family: 'Arial', sans-serif; max-width: 100%; margin: 20px auto; background: #e0f7fa; border: 1px solid #00adef; border-radius: 8px; box-shadow: 0 4px 6px rgba(0,0,0,0.1); overflow: hidden; position: relative; user-select: none; } /* HEADER & TOP BAR */ .lnd-header { background: #00adef; color: #fff; padding: 10px 15px; font-weight: bold; font-size: 18px; } .question-bar { background: #ffcc00; color: #000; text-align: center; padding: 12px; font-weight: bold; font-size: 18px; border-bottom: 2px solid #e6b800; text-transform: uppercase; } /* SET GRID */ .set-section { padding: 15px; background: #fff; text-align: center; border-bottom: 1px solid #ddd; } .set-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; margin-bottom: 15px; } @media (max-width: 450px) { .set-grid { grid-template-columns: repeat(5, 1fr); gap: 4px; } .set-btn { font-size: 12px; padding: 5px; } } .set-btn { background: #f8f9fa; border: 2px solid #ccc; padding: 10px; border-radius: 4px; cursor: pointer; font-weight: bold; color: #555; transition: 0.2s; } .set-btn.active-set { background: #00adef; color: #fff; border-color: #008cc0; box-shadow: inset 0 2px 4px rgba(0,0,0,0.2); } .timer-badge { display: inline-block; background: #fff; border: 2px solid #d9534f; color: #d9534f; font-weight: bold; padding: 5px 20px; border-radius: 20px; font-size: 18px; } /* QUESTION AREA (BLACK SCREEN) */ .game-area { background: #b3e5fc; padding-bottom: 20px; } .black-screen { background-color: #000; width: 100%; min-height: 250px; display: flex; align-items: center; justify-content: center; padding: 20px; box-sizing: border-box; border-bottom: 5px solid #333; } .urdu-text { color: #fff; font-family: 'Noto Nastaliq Urdu', serif; font-size: 26px; /* Large readable text */ line-height: 2.5; /* Strict spacing to prevent overlap */ direction: rtl; text-align: center; text-shadow: 0 2px 4px #000; } .urdu-text span.en-num { font-family: 'Arial', sans-serif; font-weight: bold; color: #ffcc00; font-size: 32px; padding: 0 5px; } /* OPTIONS - STRICT 2 COLUMNS */ .options-container { padding: 15px; display: grid; grid-template-columns: 1fr 1fr; /* Fixed 2 Columns */ gap: 15px; margin-top: 10px; } .option-btn { background: #666; /* Grey per LND screenshot */ color: #fff; border: none; padding: 20px 10px; font-size: 22px; font-weight: bold; cursor: pointer; box-shadow: 0 4px 0 #444; border-radius: 0; /* Rectangular */ transition: transform 0.1s; } .option-btn:active { transform: translateY(4px); box-shadow: none; } .option-btn:disabled { opacity: 0.7; cursor: not-allowed; transform: none; box-shadow: none; } /* FEEDBACK STRIPS */ .feedback-strip { display: none; width: 100%; padding: 15px; text-align: center; color: #fff; font-weight: bold; font-size: 20px; text-transform: uppercase; margin-top: 15px; } .strip-green { background: #008000; border-top: 3px solid #005000; } .strip-red { background: #ff0000; border-top: 3px solid #990000; } /* NEXT BUTTON */ .next-container { text-align: center; padding: 15px; display: none; background: #fff; margin-top: 10px; } .btn-next { background: #00adef; color: white; border: none; padding: 12px 50px; font-size: 18px; font-weight: bold; border-radius: 5px; cursor: pointer; box-shadow: 0 3px 0 #007ead; } /* RESULT MODAL */ .result-overlay { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.96); z-index: 99999; overflow-y: auto; padding: 20px; } .result-box { background: #fff; max-width: 450px; margin: 40px auto; border-radius: 8px; border: 6px solid #ffcc00; padding: 20px; text-align: center; } .summary-table { width: 100%; border-collapse: collapse; margin: 20px 0; table-layout: fixed; /* Fix width */ } .summary-table th { background: #eee; padding: 10px; border: 1px solid #aaa; font-size: 14px; } .summary-table td { padding: 10px; border: 1px solid #aaa; font-weight: bold; font-size: 18px; } .details-container { max-height: 250px; overflow-y: scroll; border: 1px solid #ccc; text-align: left; margin-bottom: 15px; } .details-table { width: 100%; border-collapse: collapse; font-size: 13px; } .details-table th { position: sticky; top: 0; background: #333; color: #fff; padding: 8px; z-index: 10; } .details-table td { padding: 8px; border-bottom: 1px solid #eee; } /* REWARDS */ .reward-box { background: #fffbe6; padding: 15px; border: 2px dashed #ffb300; margin-bottom: 20px; border-radius: 10px; } .reward-icon { font-size: 70px; display: block; margin-bottom: 10px; line-height: 1; } .reward-title { font-size: 22px; font-weight: bold; display: block; margin-bottom: 5px; } .reward-advice { font-size: 15px; font-style: italic; color: #d32f2f; font-weight: bold; } /* SOCIAL SHARE */ .share-btn { display: inline-block; width: 45%; padding: 12px 0; color: #fff; text-decoration: none; border-radius: 4px; margin: 5px 1%; font-weight: bold; text-align: center; } .wa-btn { background: #25D366; } .fb-btn { background: #1877F2; } LND Math: Class 3 Q. 1 - Place Value ⏱ 00:00 ✓ CORRECT / درست جواب ✗ WRONG / غلط جواب Next Question → Score: 0 / 30 Final Result TotalMarksWrongTime 30 #DigitCorrect ValueStatus Share Your Result: WhatsApp Facebook Try Another Set ↻ var PVQuiz = (function() { // --- CONFIGURATION --- var totalSets = 10; var qPerSet = 30; var currentSet = 1; var qIndex = 0; var score = 0; var wrong = 0; var timerInterval = null; var startTime; var setQuestions = []; var history = []; var audioCtx = null; // --- AUDIO ENGINE (HORRIBLE BEEP) --- function playHorribleSound() { try { var AudioContext = window.AudioContext || window.webkitAudioContext; if (!AudioContext) return; if (!audioCtx) audioCtx = new AudioContext(); if (audioCtx.state === 'suspended') audioCtx.resume(); var osc = audioCtx.createOscillator(); var gain = audioCtx.createGain(); // Sawtooth wave for harsh buzzing sound osc.type = 'sawtooth'; // Drop pitch from high to low (failure sound) osc.frequency.setValueAtTime(150, audioCtx.currentTime); osc.frequency.exponentialRampToValueAtTime(40, audioCtx.currentTime + 0.8); gain.gain.setValueAtTime(0.5, audioCtx.currentTime); gain.gain.exponentialRampToValueAtTime(0.01, audioCtx.currentTime + 0.8); osc.connect(gain); gain.connect(audioCtx.destination); osc.start(); osc.stop(audioCtx.currentTime + 0.8); } catch (e) { console.log('Audio Blocked'); } } // --- MATH GENERATOR LOGIC --- function formatNum(n) { return n.toLocaleString(); // Adds commas e.g. 50,000 } function generateData(setNum) { var data = []; // Seed-like logic for randomness for(var i=0; i