<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8"/>
 <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
 <title>IELTS Band 8.0+ Spoken Discourse Markers Review</title>
 <style>
 :root {
 --primary-red: #D32F2F;
 --dark-red: #9B1C1C;
 --bg-white: #FFFFFF;
 --light-gray: #F4F6F8;
 --border-gray: #E0E0E0;
 --text-dark: #212121;
 --text-muted: #555555;
 --accent-gold: #FFFDE7;
 }

 body {
 font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
 line-height: 1.6;
 color: var(--text-dark);
 background-color: var(--light-gray);
 margin: 0;
 padding: 20px;
 }

 .container {
 max-width: 900px;
 margin: 0 auto;
 background: var(--bg-white);
 padding: 40px;
 border-radius: 12px;
 box-shadow: 0 4px 20px rgba(0,0,0,0.08);
 border-top: 8px solid var(--primary-red);
 }

 h1 {
 color: var(--primary-red);
 font-size: 2.2rem;
 margin-top: 0;
 border-bottom: 2px solid var(--border-gray);
 padding-bottom: 15px;
 text-align: center;
 }

 h2 {
 color: var(--dark-red);
 font-size: 1.4rem;
 margin-top: 35px;
 border-bottom: 1px solid var(--border-gray);
 padding-bottom: 8px;
 }

 .subtitle {
 text-align: center;
 color: var(--text-muted);
 font-size: 1.1rem;
 margin-bottom: 30px;
 }

 /* Flashcard Component */
 .flashcard-container {
 display: grid;
 grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
 gap: 20px;
 margin-top: 20px;
 }

 .flashcard {
 background: var(--bg-white);
 border: 2px solid var(--border-gray);
 border-radius: 8px;
 min-height: 150px;
 perspective: 1000px;
 cursor: pointer;
 }

 .flashcard-inner {
 position: relative;
 width: 100%;
 height: 100%;
 text-align: center;
 transition: transform 0.6s;
 transform-style: preserve-3d;
 padding: 20px;
 box-sizing: border-box;
 display: flex;
 align-items: center;
 justify-content: center;
 }

 .flashcard.flipped .flashcard-inner {
 transform: rotateY(180deg);
 }

 .front, .back {
 position: absolute;
 width: 100%;
 height: 100%;
 backface-visibility: hidden;
 display: flex;
 flex-direction: column;
 justify-content: center;
 align-items: center;
 padding: 15px;
 box-sizing: border-box;
 }

 .front {
 color: var(--dark-red);
 font-weight: bold;
 font-size: 1.15rem;
 }

 .back {
 background-color: var(--accent-gold);
 transform: rotateY(180deg);
 color: var(--text-dark);
 font-size: 0.95rem;
 border-radius: 6px;
 }

 /* Interactive Quiz Component */
 .quiz-item {
 background: #FAFAFA;
 border-left: 4px solid var(--primary-red);
 padding: 20px;
 margin-bottom: 20px;
 border-radius: 0 8px 8px 0;
 }

 select {
 padding: 6px 10px;
 font-size: 1rem;
 border: 2px solid var(--border-gray);
 border-radius: 4px;
 color: var(--dark-red);
 font-weight: 600;
 background-color: white;
 margin: 5px;
 }

 .feedback {
 margin-top: 10px;
 font-weight: bold;
 display: none;
 }

 .correct { color: #2E7D32; }
 .incorrect { color: #C62828; }

 /* Simulator Component */
 .simulator-box {
 background: #F0F4F8;
 border: 1px solid #D0D7DE;
 padding: 25px;
 border-radius: 8px;
 margin-top: 20px;
 }

 .prompt-btn {
 background-color: var(--primary-red);
 color: white;
 border: none;
 padding: 12px 24px;
 font-size: 1rem;
 font-weight: bold;
 border-radius: 6px;
 cursor: pointer;
 transition: background 0.2s;
 display: block;
 margin: 0 auto 20px auto;
 }

 .prompt-btn:hover {
 background-color: var(--dark-red);
 }

 .examiner-screen {
 background: black;
 color: #00FF00;
 font-family: 'Courier New', Courier, monospace;
 padding: 20px;
 border-radius: 6px;
 min-height: 80px;
 font-size: 1.1rem;
 margin-bottom: 20px;
 box-shadow: inset 0 0 10px rgba(0,0,0,0.8);
 }

 .required-markers-box {
 background: white;
 border: 1px dashed var(--dark-red);
 padding: 15px;
 border-radius: 6px;
 text-align: center;
 }

 .marker-tag {
 display: inline-block;
 background: #FFF5F5;
 border: 1px solid #FFCDD2;
 color: var(--dark-red);
 padding: 4px 12px;
 border-radius: 15px;
 margin: 5px;
 font-weight: bold;
 font-size: 0.9rem;
 }

 .action-container {
 text-align: center;
 margin-top: 30px;
 }

 .check-btn {
 background-color: #212121;
 color: white;
 border: none;
 padding: 12px 30px;
 font-size: 1rem;
 font-weight: bold;
 border-radius: 6px;
 cursor: pointer;
 }

 .check-btn:hover {
 background-color: #424242;
 }
 </style>
</head>
<body>

<div class="container">
 <h1>IELTS Band 8.0+ Lexical Review Master</h1>
 <div class="subtitle">Interactive Training Suite for Advanced Spoken Fluency</div>

 <!-- SECTION 1: FLASHCARDS -->
 <h2>1. Active Functional Recall (Click to Flip)</h2>
 <p>Review the exact strategic reasons why we use these markers to optimize your criteria score.</p>
 <div class="flashcard-container">
 <div class="flashcard">
 <div class="flashcard-inner">
 <div class="front">&#8220;Well technically, &#8230;&#8221;</div>
 <div class="back"><strong>Why it&#8217;s great:</strong> Used to introduce a precise fact right before adding personal context or nuance.</div>
 </div>
 </div>
 <div class="flashcard">
 <div class="flashcard-inner">
 <div class="front">&#8220;But usually I tell people&#8230;&#8221;</div>
 <div class="back"><strong>Why it&#8217;s great:</strong> Serves as an excellent conversational bridge to simplify an otherwise complex background.</div>
 </div>
 </div>
 <div class="flashcard">
 <div class="flashcard-inner">
 <div class="front">&#8220;Well, there’s always a chance&#8230;&#8221;</div>
 <div class="back"><strong>Why it&#8217;s great:</strong> A native-level phrase used to smoothly frame future possibilities instead of using repetitive words like &#8220;maybe&#8221;.</div>
 </div>
 </div>
 <div class="flashcard">
 <div class="flashcard-inner">
 <div class="front">&#8220;As ideal as my [X] is, &#8230;&#8221;</div>
 <div class="back"><strong>Why it&#8217;s great:</strong> An advanced concessive structure engineered to introduce a core drawback cleanly after identifying a benefit.</div>
 </div>
 </div>
 <div class="flashcard">
 <div class="flashcard-inner">
 <div class="front">&#8220;Specifically, &#8230;&#8221;</div>
 <div class="back"><strong>Why it&#8217;s great:</strong> A highly precise spoken transition word to dive directly into detailed, concrete examples.</div>
 </div>
 </div>
 </div>

 <!-- SECTION 2: CONTEXTUAL QUIZ -->
 <h2>2. Contextual Application Check</h2>
 <p>Select the most appropriate discourse marker based on the logical flow of the speaker&#8217;s response.</p>

 <div id="quiz-form">
 <div class="quiz-item" data-answer="1">
 <p><strong>Examiner:</strong> Do you like your hometown? <br />
 <strong>Candidate:</strong> 
 <select class="quiz-select">
 <option value="">&#8212; Choose Marker &#8212;</option>
 <option value="1">Well technically,</option>
 <option value="2">Well, there&#8217;s always a chance&#8230;</option>
 <option value="3">Specifically,</option>
 </select> 
 I wasn&#8217;t actually born there, since my parents moved to Hanoi when I was just an infant. 
 <select class="quiz-select">
 <option value="">&#8212; Choose Marker &#8212;</option>
 <option value="4">As ideal as my town is,</option>
 <option value="5">But usually I tell people</option>
 <option value="6">Specifically,</option>
 </select>
 it&#8217;s my hometown because it&#8217;s where all my childhood memories were formed.</p>
 <div class="feedback"></div>
 </div>

 <div class="quiz-item" data-answer="2">
 <p><strong>Examiner:</strong> Are you happy with the public transport infrastructure where you live? <br />
 <strong>Candidate:</strong> 
 <select class="quiz-select">
 <option value="">&#8212; Choose Marker &#8212;</option>
 <option value="1">But usually I tell people</option>
 <option value="2">As ideal as my neighborhood is,</option>
 <option value="3">Well, there&#8217;s always a chance&#8230;</option>
 </select> 
 it&#8217;s definitely lacking in terms of accessibility. 
 <select class="quiz-select">
 <option value="">&#8212; Choose Marker &#8212;</option>
 <option value="4">Specifically,</option>
 <option value="5">Well technically,</option>
 <option value="6">But usually I tell people</option>
 </select>
 the nearest sky train terminal is almost a thirty-minute drive out of the way.</p>
 <div class="feedback"></div>
 </div>
 </div>

 <div class="action-container">
 <button class="check-btn">Evaluate My Answers</button>
 </div>

 <!-- SECTION 3: AUDIO-STYLE SIMULATOR -->
 <h2>3. Real-Time Spontaneous Production Simulator</h2>
 <p>Click the button below to receive an exam prompt. Once generated, turn on your voice recorder or unmute, and answer the question aloud under the exact lexical constraints listed below.</p>

 <div class="simulator-box">
 <button class="prompt-btn">Generate Examiner Prompt</button>
 <div class="examiner-screen" id="prompt-display">Press the button above to begin the simulation&#8230;</div>
 
 <div class="required-markers-box">
 <p style="margin-top:0; font-weight:bold; color:var(--dark-red);">Your Speech Constraints (Must include these dynamically):</p>
 <div id="target-tags-area">
 <span class="marker-tag">Start with: &#8220;Well, there&#8217;s always a chance&#8230;&#8221;</span>
 <span class="marker-tag">Incorporate: &#8220;Specifically, &#8230;&#8221;</span>
 </div>
 </div>
 </div>
</div>

<script>
 function checkAnswers() {
 const items = document.querySelectorAll('.quiz-item');
 
 // Check Item 1
 const selects1 = items[0].querySelectorAll('.quiz-select');
 const feedback1 = items[0].querySelector('.feedback');
 if (selects1[0].value === "1" && selects1[1].value === "5") {
 feedback1.innerHTML = "✓ Perfect. Uses literal distinction paired with personal synthesis logic.";
 feedback1.className = "feedback correct";
 } else {
 feedback1.innerHTML = "✗ Incorrect. Hint: Use 'Well technically' to set up the literal fact and 'But usually I tell people' to bridge it.";
 feedback1.className = "feedback incorrect";
 }
 feedback1.style.display = "block";

 // Check Item 2
 const selects2 = items[1].querySelectorAll('.quiz-select');
 const feedback2 = items[1].querySelector('.feedback');
 if (selects2[0].value === "2" && selects2[1].value === "4") {
 feedback2.innerHTML = "✓ Perfect. Demonstrates exceptional complex concessive mastery followed by immediate concrete proof.";
 feedback2.className = "feedback correct";
 } else {
 feedback2.innerHTML = "✗ Incorrect. Hint: Start with the conditional contrast clause 'As ideal as...' and back it up using 'Specifically'.";
 feedback2.className = "feedback incorrect";
 }
 feedback2.style.display = "block";
 }

 const prompts = [
 "Do you see yourself living in a completely different city or country ten years from now?",
 "Do you think artificial intelligence will change the way teenagers study English in the near future?",
 "Do you believe your personal hobbies and leisure activities are bound to shift as you grow older?",
 "Will the neighborhood you currently live in undergo massive infrastructure upgrades over the next decade?"
 ];

 function generatePrompt() {
 const display = document.getElementById('prompt-display');
 const randomIndex = Math.floor(Math.random() * prompts.length);
 display.innerHTML = "EXAMINER PROMPT: \"" + prompts[randomIndex] + "\"";
 }
</script>

</body>
</html>
<span id="wordads-inline-marker" style="display: none;"></span>
Advanced Collocations Review Advanced Collocations & Phrasal Expressions Vocabulary source reference study sheet: image_d32686.png Exercise…
High-Level Topic Vocabulary (Urban & Housing) Exercise 1: Term Definition Matching How to…
Interactive Matching Exercise: Spoken Discourse Markers Matching Exercise Idiomatic Fillers & Spoken Discourse Markers Part…
Khi nói đến việc học tiếng Anh, nhiều người thường tập trung vào việc học…
Trong thời đại toàn cầu hóa, tiếng Anh đã trở thành "cầu nối tri thức"…
Học Tiếng Anh không chỉ là nắm vững ngữ pháp hay từ vựng mà còn…