commit 6007a88efb53593a85e827aa99b02fb2757e6141 Author: Rikels Date: Mon May 25 06:49:06 2026 +0200 working single page html diff --git a/audio/Redlight - Me & You (feat. ASTR).mp3 b/audio/Redlight - Me & You (feat. ASTR).mp3 new file mode 100755 index 0000000..fab7451 Binary files /dev/null and b/audio/Redlight - Me & You (feat. ASTR).mp3 differ diff --git a/audio/The Chemical Brothers - Another World.mp3 b/audio/The Chemical Brothers - Another World.mp3 new file mode 100755 index 0000000..43ab35e Binary files /dev/null and b/audio/The Chemical Brothers - Another World.mp3 differ diff --git a/audio/The Playboyz - Sunset At Brecht.flac b/audio/The Playboyz - Sunset At Brecht.flac new file mode 100644 index 0000000..0abe963 Binary files /dev/null and b/audio/The Playboyz - Sunset At Brecht.flac differ diff --git a/images/kasteel.jpeg b/images/kasteel.jpeg new file mode 100644 index 0000000..d7be9e1 Binary files /dev/null and b/images/kasteel.jpeg differ diff --git a/images/photo_2026-05-04_20-22-04.jpg b/images/photo_2026-05-04_20-22-04.jpg new file mode 100644 index 0000000..4694a95 Binary files /dev/null and b/images/photo_2026-05-04_20-22-04.jpg differ diff --git a/questions.json b/questions.json new file mode 100644 index 0000000..1febbc3 --- /dev/null +++ b/questions.json @@ -0,0 +1,186 @@ +{ + "rounds": [ + { + "name": "Ronde 1: Kroatië Herinneringen", + "theme": "croatia-theme", + "questions": [ + { + "question": "Hoe vroeg vertrok het vliegtuig naar Kroatië? (06:38 is de foto van Bas verstuurd)", + "image": "images/kasteel.jpeg", + "audio": "audio/The Chemical Brothers - Another World.mp3", + "options": ["Dubrovnik", "Hvar", "Split", "Zadar"], + "correctOption": 1 + }, + { + "question": "In welke Kroatische stad kwamen we voor het eerst samen?", + "image": "images/kasteel.jpeg", + "options": ["Rijeka", "Zadar", "Osijek", "Pula"], + "correctOption": 1 + }, + { + "question": "Wie zijn allemaal van de waterval afgesprongen (niet doorvertellen)?", + "audio": "audio/Redlight - Me & You (feat. ASTR).mp3", + + "options": ["Dubrovnik", "Hvar", "Split", "Zadar"], + "correctOption": 4 + }, + { + "question": "Welk drankje dronken we boven op de berg Raki ", + "audio": "audio/Redlight - Me & You (feat. ASTR).mp3", + + "options": ["Dubrovnik", "Hvar", "Split", "Zadar"], + "correctOption": 4 + } + ] + }, + { + "name": "Ronde 2: Reisavonturen", + "theme": "croatia-theme", + "questions": [ + { + "question": "Hoe heette het hostel waar we in Dubrovnik verbleven?", + "image": null, + "options": ["Beach Hostel", "Old Town Hostel", "Mountain Hostel", "City Hostel"], + "correctOption": 1 + }, + { + "question": "Welk Kroatische wijnsoort dronken we tijdens de wijnproevering?", + "image": null, + "options": ["Malvazija", "Plavac Mali", "Pošip", "Grk"], + "correctOption": 1 + }, + { + "question": "Wat noemden we onze vriendengroep die we in Kroatië begonnen?", + "image": null, + "options": ["Adriatic Friends", "Croatia Crew", "Dalmatian Squad", "Istra Group"], + "correctOption": 1 + } + ] + }, + { + "name": "Ronde 3: Muziek ronde", + "theme": "croatia-theme", + "questions": [ + { + "question": "meezingers (numnmer afkappen en gorpeje moet aanvullen)", + "image": null, + "options": ["Ja", "Nee", "godverdomme nee!"], + "correctOption": 1 + }, + { + "question": "Vitas - 7th element wat is de originele titel", + "image": null, + "options": ["Ja", "Nee", "godverdomme nee!"], + "correctOption": 1 + } + ] + }, + { + "name": "Ronde 4: Nederlandse reunies", + "theme": "dutch-theme", + "questions": [ + { + "question": "Met welke activiteit begonnen we onze eerste reunie?", + "image": "images/kasteel.jpeg", + "audio": "audio/The Playboyz - Sunset At Brecht.flac", + "options": ["paintball", "Utrecht", "Groningen", "Leiden"], + "correctOption": 0 + }, + { + "question": "Wie heeft deze georganiseerd?", + "image": null, + "options": ["Rijksmuseum", "Van Gogh Museum", "Anne Frank Huis", "Stedelijk Museum"], + "correctOption": 1 + }, + { + "question": "In welke plaats was het paintball terrein?", + "image": null, + "options": ["Maastricht", "Delft", "Zwolle", "Arnhem"], + "correctOption": 1 + }, + { + "question": "Welk Nederlands dier hebben we gezien in dierentuin Efteling?", + "image": null, + "options": ["Olifant", "Pinguïn", "Nee, geen dieren", "Kangoeroe"], + "correctOption": 2 + }, + { + "question": "Hoe heet het beroemde Nederlandse gerecht met worst en friet?", + "image": null, + "options": ["Stamppot", "Bitterballen", "Hutspot", "Alle bovenstaande"], + "correctOption": 3 + }, + { + "question": "Hoeveel euro hebben we in totaal uitgegeven aan eten/drinken in restaurants?", + "image": null, + "options": ["Pašticada", "Burek", "Peka", "Risotto"], + "correctOption": 1 + } + ] + }, + { + "name": "Ronde 5: Cultuur & Tradities uit Kroatië", + "theme": "culture-theme", + "questions": [ + { + "question": "Welk Kroatisch woord betekent 'dank je wel'?", + "image": null, + "options": ["Hvala", "Zdravo", "Dobar dan", "Ljubav"], + "correctOption": 0 + } + ] + }, + { + "name": "Ronde 6: baby foto's", + "theme": "friends-theme", + "questions": [ + { + "question": "baby foto's?", + "image": null, + "options": ["1 week", "2 weken", "3 weken", "4 weken"], + "correctOption": 1 + }, + { + "question": "feitjes van mensen?", + "image": null, + "options": ["1 week", "2 weken", "3 weken", "4 weken"], + "correctOption": 1 + } + ] + }, + { + "name": "Ronde 6: opdrachten/spelletjes", + "theme": "friends-theme", + "questions": [ + { + "question": "Raad de smaak", + "image": null, + "options": ["1 week", "2 weken", "3 weken", "4 weken"], + "correctOption": 1 + }, + { + "question": "voel wat het is", + "image": null, + "options": ["komkommer voor Luuk", "2 weken", "3 weken", "4 weken"], + "correctOption": 1 + } + ] + } + ], + "config": { + "title": "Kroatië vriendengroep Pub Quiz", + "group_name": "🇭🇷 Kroatië vriendengroep Pub Quiz", + "start_page_title": "Pub Quiz Night", + "start_page_subtitle": "Voor onze geweldige vriendengroep!", + "start_page_welcome": "Welkom bij de quiz! After each round, we'll take a short break to check answers. At the end, we'll see all the answers together.", + "round_break_title": "Round Break", + "round_break_message": "Take a moment to check the answers and have a drink!", + "review_page_title": "Review Round", + "review_page_message": "Discuss your answers above. When you're ready, click the button to continue.", + "final_page_title": "Quiz Complete!", + "final_page_subtitle": "Here are all the answers for our Croatia friends!", + "play_again_button": "Play Again", + "next_round_button": "Next Round", + "continue_button": "Continue to Next Round" + } +} diff --git a/quiz.html b/quiz.html new file mode 100644 index 0000000..4a95db5 --- /dev/null +++ b/quiz.html @@ -0,0 +1,890 @@ + + + + + + Croatia Friends Pub Quiz + + + +
+
+ + +
+

+

+

+ +
+ + +
+
+
+
+
+ Question image + +
+ +
+ + +
+
+ + +
+

📝 Quiz Recap

+

All questions with answers

+
+ +
+ + +
+

+

+
+ +
+ + +
+

+
+

+ + +
+ + +
+

+
+

+ + +
+
+ + + + \ No newline at end of file diff --git a/style.css b/style.css new file mode 100644 index 0000000..ffb3f7c --- /dev/null +++ b/style.css @@ -0,0 +1,600 @@ +/* ======================================== + SECTION 1: RESET & VARIABLES + ======================================== */ + +/* Reset */ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +/* CSS Custom Properties */ +:root { + /* ========== Primary Colors ========== */ + --color-primary: #1a5276; + --color-primary-gradient: linear-gradient(135deg, #1a5276 0%, #2c3e50 100%); + + /* ========== Secondary Colors ========== */ + --color-secondary: #3498db; + --color-secondary-gradient: linear-gradient(135deg, #3498db 0%, #2980b9 100%); + + /* ========== Accent/Action Colors ========== */ + --color-accent: #e74c3c; + --color-accent-gradient: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%); + + /* ========== Theme-Specific Colors ========== */ + + /* Croatia Theme - Ocean Blues with Golden Yellow */ + --color-croatia-bg: linear-gradient(135deg, #0077b6 0%, #00b4d8 50%, #90e0ef 100%); + --color-croatia-btn: linear-gradient(135deg, #f1c40f 0%, #f39c12 100%); + --color-croatia-border: #f1c40f; + + /* Dutch Theme - Dutch Flag Colors with Orange Accent */ + --color-dutch-bg: linear-gradient(135deg, #ff4040 0%, #ffd1ad 50%, #0071ff 100%); + --color-dutch-btn: linear-gradient(135deg, #ff9900 0%, #ff6600 100%); + --color-dutch-border: #ff6600; + --color-dutch-text: #21468b; + + /* Culture Theme - Warm Earth Tones */ + --color-culture-bg: linear-gradient(135deg, #8b4513 0%, #d2691e 50%, #cd853f 100%); + --color-culture-btn: linear-gradient(135deg, #ffd700 0%, #ffa500 100%); + --color-culture-border: #ffd700; + + /* Friends Theme - Friendly Blue and Green */ + --color-friends-bg: linear-gradient(135deg, #4CAF50 0%, #2196F3 100%); + --color-friends-btn: linear-gradient(135deg, #ff6b6b 0%, #feca57 100%); + --color-friends-border: #4CAF50; + + /* ========== Neutral Colors ========== */ + --color-white: #ffffff; + + /* ========== Progress Bar Colors ========== */ + --color-progress-default: linear-gradient(90deg, #3498db, #2980b9); + --color-progress-croatia: linear-gradient(90deg, #0077b6, #00b4d8); + --color-progress-dutch: linear-gradient(90deg, #ff9900, #ff6600); + --color-progress-culture: linear-gradient(90deg, #d2691e, #cd853f); + --color-progress-friends: linear-gradient(90deg, #4CAF50, #2196F3); + --color-white-variant: #f8f9fa; + --color-gray-light: #f5f5f5; + --color-gray-medium: #7f8c8d; + --color-gray-dark: #2c3e50; + --color-gray-border: #bdc3c7; + --color-gray-subtle: #e0e0e0; + + /* ========== Status Colors ========== */ + --color-success: #27ae60; + --color-success-bg: #e8f5e9; + --color-success-gradient: linear-gradient(135deg, #d4edda 0%, #c3e6cb 100%); + --color-success-border: #4caf50; + + --color-error: #e74c3c; + --color-error-bg: #fff5f5; + --color-error-border: #e74c3c; + + /* ========== Shadow & Border Colors ========== */ + --shadow-sm: 0 2px 8px rgba(76, 175, 80, 0.3); + --shadow-md: 0 5px 15px rgba(0, 0, 0, 0.15); + --shadow-lg: 0 10px 30px rgba(0, 0, 0, 0.2); + --shadow-xl: 0 20px 60px rgba(0, 0, 0, 0.3); + + /* ========== Spacing Variables ========== */ + --spacing-xs: 5px; + --spacing-sm: 10px; + --spacing-md: 15px; + --spacing-lg: 20px; + --spacing-xl: 30px; + --spacing-xxl: 40px; + + /* ========== Typography Variables ========== */ + --font-size-sm: 0.95rem; + --font-size-base: 1rem; + --font-size-md: 1.2rem; + --font-size-lg: 1.3rem; + --font-size-xl: 1.5rem; + --font-size-xxl: 2.5rem; + --font-weight-bold: bold; + --font-weight-semibold: 600; + --font-weight-medium: 500; +} + +/* ======================================== + SECTION 2: BASE LAYOUT + ======================================== */ + +body { + font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; + background: var(--color-primary-gradient); + min-height: 100vh; + display: flex; + justify-content: center; + align-items: center; + padding: var(--spacing-lg); +} + +.container { + background: var(--color-white); + border-radius: 20px; + padding: var(--spacing-xxl); + max-width: 800px; + width: 100%; + box-shadow: var(--shadow-xl); + text-align: center; +} + +/* ======================================== + SECTION 3: TYPOGRAPHY + ======================================== */ + +h1 { + color: var(--color-primary); + margin-bottom: var(--spacing-sm); + font-size: var(--font-size-xxl); +} + +.subtitle { + color: var(--color-gray-medium); + font-size: var(--font-size-md); + margin-bottom: var(--spacing-xl); +} + +.question-number { + color: var(--color-primary); + font-weight: var(--font-weight-bold); + font-size: var(--font-size-base); + margin-bottom: var(--spacing-md); +} + +.question-text { + font-size: var(--font-size-xl); + color: var(--color-gray-dark); + margin-bottom: var(--spacing-xl); + line-height: 1.6; +} + +.group-name { + font-size: var(--font-size-lg); + color: var(--color-accent); + margin-bottom: var(--spacing-sm); + font-weight: var(--font-weight-bold); +} + +/* ======================================== + SECTION 4: LAYOUT COMPONENTS + ======================================== */ + +.page { + display: none; +} + +.page.active { + display: block; +} + +.progress { + display: flex; + justify-content: center; + gap: var(--spacing-sm); + margin-bottom: var(--spacing-xl); + flex-wrap: wrap; +} + +.progress-dot { + width: 15px; + height: 15px; + border-radius: 50%; + background: var(--color-gray-border); + border: 2px solid var(--color-white); +} + +.progress-dot.active { + background: var(--color-accent); +} + +.progress-dot.completed { + background: var(--color-success); +} + +.question-container { + text-align: left; + margin-bottom: var(--spacing-lg); +} + +.question-image { + max-width: 100%; + max-height: 400px; + margin: var(--spacing-lg) auto; + border-radius: 15px; + box-shadow: var(--shadow-lg); + display: none; +} + +.question-image.show { + display: block; +} + +.answers-container { + background: var(--color-white-variant); + border-radius: 15px; + padding: var(--spacing-lg); + margin: var(--spacing-lg) 0; + text-align: left; +} + +.answers-grid { + display: grid; + gap: var(--spacing-md); + margin-top: var(--spacing-lg); +} + +.answers-grid.two-columns { + grid-template-columns: repeat(2, 1fr); +} + +.answers-grid.three-columns { + grid-template-columns: repeat(3, 1fr); +} + +.answers-grid.four-columns { + grid-template-columns: repeat(4, 1fr); +} + +.answers-grid.one-column { + grid-template-columns: 1fr; + justify-items: center; +} + +.answers-grid.five-plus-columns { + grid-template-columns: repeat(5, 1fr); +} + +/* ======================================== + SECTION 5: INTERACTIVE ELEMENTS + ======================================== */ + +.btn { + background: var(--color-accent-gradient); + color: var(--color-white); + border: none; + padding: var(--spacing-lg) 40px; + font-size: var(--font-size-md); + border-radius: 50px; + cursor: pointer; + margin: var(--spacing-sm); + transition: transform 0.2s, box-shadow 0.2s; + font-weight: var(--font-weight-bold); +} + +.btn:hover { + transform: translateY(-2px); + box-shadow: 0 10px 20px rgba(231, 76, 60, 0.3); +} + +.btn-secondary { + background: var(--color-secondary-gradient); +} + +.btn-secondary:hover { + box-shadow: var(--shadow-md); + } + + .btn-small { + background: var(--color-accent-gradient); + color: var(--color-white); + border: none; + padding: 6px 12px; + font-size: 14px; + border-radius: 50px; + cursor: pointer; + margin: 0; + transition: transform 0.2s, box-shadow 0.2s; + font-weight: var(--font-weight-bold); + } + + .btn-small:hover { + transform: scale(1.05); + box-shadow: 0 4px 8px rgba(231, 76, 60, 0.3); + } + + .audio-mute-btn { + background: var(--color-accent-gradient); + color: var(--color-white); + border: none; + padding: 6px 12px; + font-size: 14px; + border-radius: 50px; + cursor: pointer; + margin: 0; + transition: transform 0.2s, box-shadow 0.2s; + font-weight: var(--font-weight-bold); + display: flex; + align-items: center; + gap: 5px; + } + + .audio-mute-btn:hover { + transform: scale(1.05); + box-shadow: 0 4px 8px rgba(231, 76, 60, 0.3); + } + + .answer-item { + margin: var(--spacing-md) 0; + padding: var(--spacing-lg); + background: var(--color-white); + border-radius: 10px; + border-left: 4px solid var(--color-accent); +} + +.answer-label { + font-weight: var(--font-weight-bold); + color: var(--color-gray-dark); + margin-bottom: var(--spacing-sm); +} + +.answer-item.selected { + background: var(--color-success-bg); + border-left-color: var(--color-success-border); + box-shadow: var(--shadow-sm); +} + +.answer-item:hover { + background: var(--color-gray-light); +} + +.answer-text { + color: var(--color-gray-medium); +} + +/* ======================================== + SECTION 9: AUDIO PLAYER + ======================================== */ + +#audio-player { + background: var(--color-white-variant); + border-radius: 12px; + padding: var(--spacing-md) var(--spacing-lg); + margin: var(--spacing-lg) 0; + display: flex; + align-items: center; + gap: var(--spacing-md); + box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.05); +} + + + +.answer-image { + max-width: 100%; + max-height: 200px; + margin-top: var(--spacing-sm); + border-radius: 10px; + box-shadow: var(--shadow-md); +} + +/* ======================================== + SECTION 6: RECAP SECTION + ======================================== */ + +.recap-item { + margin: var(--spacing-xl) 0; + padding: var(--spacing-xl); + background: var(--color-white-variant); + border-radius: 15px; + text-align: left; +} + +.recap-question { + font-size: var(--font-size-md); + color: var(--color-gray-dark); + margin-bottom: var(--spacing-md); + font-weight: var(--font-weight-medium); +} + +.recap-answers { + display: flex; + flex-direction: column; + gap: var(--spacing-sm); +} + +.recap-answer-item { + padding: var(--spacing-md) var(--spacing-lg); + border-radius: 8px; +} + +.recap-answer-item.correct { + background: var(--color-success-gradient); + border-left: 4px solid var(--color-success-border); + color: #155724; +} + +.recap-answer-item.incorrect { + background: var(--color-error-bg); + border-left: 4px solid var(--color-error); + color: var(--color-error); +} + +.recap-answer-label { + font-size: var(--font-size-sm); + font-weight: var(--font-weight-semibold); + margin-bottom: var(--spacing-xs); +} + +.recap-answer-text { + font-size: var(--font-size-sm); +} + +.recap-image { + max-width: 100%; + max-height: 150px; + margin-top: var(--spacing-sm); + border-radius: 8px; + box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1); +} + +/* ======================================== + SECTION 7: THEME CLASSES + ======================================== */ + +/* --- Croatia Theme - Ocean Blues with Golden Yellow --- */ +.croatia-theme { + background: var(--color-croatia-bg); +} + +.croatia-theme h1 { + color: var(--color-white); + text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3); +} + +.croatia-theme .btn { + background: var(--color-croatia-btn); +} + +.croatia-theme .btn:hover { + box-shadow: 0 10px 20px rgba(241, 196, 15, 0.4); +} + +.croatia-theme .question-text { + color: var(--color-primary); +} + +.croatia-theme .answer-item { + border-left-color: var(--color-croatia-border); +} + +/* --- Dutch Theme - Dutch Flag Colors with Orange Accent --- */ +.dutch-theme { + background: var(--color-dutch-bg); +} + +.dutch-theme h1 { + color: var(--color-dutch-text); + text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2); +} + +.dutch-theme .btn { + background: var(--color-dutch-btn); +} + +.dutch-theme .btn:hover { + box-shadow: 0 10px 20px rgba(255, 153, 0, 0.4); +} + +.dutch-theme .question-text { + color: #1a365d; +} + +.dutch-theme .answer-item { + border-left-color: var(--color-dutch-border); +} + +/* --- Culture Theme - Warm Earth Tones --- */ +.culture-theme { + background: var(--color-culture-bg); +} + +.culture-theme h1 { + color: var(--color-white); + text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3); +} + +.culture-theme .btn { + background: var(--color-culture-btn); +} + +.culture-theme .btn:hover { + box-shadow: 0 10px 20px rgba(255, 215, 0, 0.4); +} + +.culture-theme .question-text { + color: #2c1810; +} + +.culture-theme .answer-item { + border-left-color: var(--color-culture-border); +} + +/* --- Friends Theme - Friendly Blue and Green --- */ +.friends-theme { + background: var(--color-friends-bg); +} + +.friends-theme h1 { + color: var(--color-white); + text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3); +} + +.friends-theme .btn { + background: var(--color-friends-btn); +} + +.friends-theme .btn:hover { + box-shadow: 0 10px 20px rgba(255, 107, 107, 0.4); +} + +.friends-theme .question-text { + color: #1a2a3a; +} + +.friends-theme .answer-item { + border-left-color: var(--color-friends-border); +} + +/* ======================================== + SECTION 7: PROGRESS BAR THEME COLORS + ======================================== */ + +/* Croatia Theme Progress Bar */ +.croatia-theme .audio-progress-bar { + background: linear-gradient(90deg, #0077b6, #00b4d8); +} + +/* Dutch Theme Progress Bar */ +.dutch-theme .audio-progress-bar { + background: linear-gradient(90deg, #ff9900, #ff6600); +} + +/* Culture Theme Progress Bar */ +.culture-theme .audio-progress-bar { + background: linear-gradient(90deg, #d2691e, #cd853f); +} + +/* Friends Theme Progress Bar */ +.friends-theme .audio-progress-bar { + background: linear-gradient(90deg, #4CAF50, #2196F3); +} + +/* ======================================== + SECTION 8: RESPONSIVE DESIGN + ======================================== */ + +/* Mobile-first approach: Base styles work on small screens + Media queries extend for larger screens or specific adjustments */ + +/* Small screens (max-width: 600px) - Stack grid columns */ +@media (max-width: 600px) { + .answers-grid.two-columns, + .answers-grid.three-columns, + .answers-grid.four-columns { + grid-template-columns: 1fr; + justify-items: center; + } + + /* Container adjustments */ + .container { + padding: var(--spacing-lg); + } + + /* Typography adjustments */ + h1 { + font-size: var(--font-size-lg); + } + + .question-text { + font-size: var(--font-size-md); + } + + /* Button adjustments */ + .btn { + padding: var(--spacing-md) 30px; + font-size: var(--font-size-base); + } +} diff --git a/style.css.backup b/style.css.backup new file mode 100644 index 0000000..ef9ed7e --- /dev/null +++ b/style.css.backup @@ -0,0 +1,391 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; + background: linear-gradient(135deg, #1a5276 0%, #2c3e50 100%); + min-height: 100vh; + display: flex; + justify-content: center; + align-items: center; + padding: 20px; +} + +.container { + background: white; + border-radius: 20px; + padding: 40px; + max-width: 800px; + width: 100%; + box-shadow: 0 20px 60px rgba(0,0,0,0.3); + text-align: center; +} + +h1 { + color: #1a5276; + margin-bottom: 10px; + font-size: 2.5rem; +} + +.subtitle { + color: #7f8c8d; + font-size: 1.2rem; + margin-bottom: 30px; +} + +.page { + display: none; +} + +.page.active { + display: block; +} + +.progress { + display: flex; + justify-content: center; + gap: 10px; + margin-bottom: 30px; + flex-wrap: wrap; +} + +.progress-dot { + width: 15px; + height: 15px; + border-radius: 50%; + background: #bdc3c7; + border: 2px solid white; +} + +.progress-dot.active { + background: #e74c3c; +} + +.progress-dot.completed { + background: #27ae60; +} + +.question-container { + text-align: left; + margin-bottom: 20px; +} + +.question-number { + color: #1a5276; + font-weight: bold; + font-size: 1rem; + margin-bottom: 15px; +} + +.question-text { + font-size: 1.5rem; + color: #2c3e50; + margin-bottom: 20px; + line-height: 1.6; +} + +.question-image { + max-width: 100%; + max-height: 400px; + margin: 20px auto; + border-radius: 15px; + box-shadow: 0 10px 30px rgba(0,0,0,0.2); + display: none; +} + +.question-image.show { + display: block; +} + +.answers-container { + background: #f8f9fa; + border-radius: 15px; + padding: 20px; + margin: 20px 0; + text-align: left; +} + +.answer-item { + margin: 15px 0; + padding: 15px; + background: white; + border-radius: 10px; + border-left: 4px solid #e74c3c; +} + +.answer-label { + font-weight: bold; + color: #2c3e50; + margin-bottom: 10px; +} + +.answer-item.selected { + background: #e8f5e9; + border-left-color: #4caf50; + box-shadow: 0 2px 8px rgba(76, 175, 80, 0.3); +} + +.answer-item:hover { + background: #f5f5f5; +} + +.answer-text { + color: #7f8c8d; +} + +.answer-image { + max-width: 100%; + max-height: 200px; + margin-top: 10px; + border-radius: 10px; + box-shadow: 0 5px 15px rgba(0,0,0,0.15); +} + +.btn { + background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%); + color: white; + border: none; + padding: 15px 40px; + font-size: 1.2rem; + border-radius: 50px; + cursor: pointer; + margin: 10px; + transition: transform 0.2s, box-shadow 0.2s; + font-weight: bold; +} + +.btn-secondary { + background: linear-gradient(135deg, #3498db 0%, #2980b9 100%); +} + +.btn-secondary:hover { + box-shadow: 0 10px 20px rgba(52, 152, 219, 0.3); +} + +.answers-grid { + display: grid; + gap: 15px; + margin-top: 20px; +} + +.answers-grid.two-columns { + grid-template-columns: repeat(2, 1fr); +} + +.answers-grid.three-columns { + grid-template-columns: repeat(3, 1fr); +} + +.answers-grid.four-columns { + grid-template-columns: repeat(4, 1fr); +} + +.answers-grid.one-column { + grid-template-columns: 1fr; + justify-items: center; +} + +.answers-grid.five-plus-columns { + grid-template-columns: repeat(5, 1fr); +} + +@media (max-width: 600px) { + .answers-grid.two-columns, + .answers-grid.three-columns, + .answers-grid.four-columns { + grid-template-columns: 1fr; + justify-items: center; + } +} + +/* Theme Classes */ + +.croatia-theme { + background: linear-gradient(135deg, #0077b6 0%, #00b4d8 50%, #90e0ef 100%); +} + +.croatia-theme h1 { + color: white; + text-shadow: 2px 2px 4px rgba(0,0,0,0.3); +} + +.croatia-theme .btn { + background: linear-gradient(135deg, #f1c40f 0%, #f39c12 100%); +} + +.croatia-theme .btn:hover { + box-shadow: 0 10px 20px rgba(241, 196, 15, 0.4); +} + +.croatia-theme .question-text { + color: #1a5276; +} + +.croatia-theme .answer-item { + border-left-color: #f1c40f; +} + +/* Dutch Theme - Dutch Flag Colors with Orange Accent */ +.dutch-theme { + background: linear-gradient(135deg, #ff4040 0%, #ffd1ad 50%, #0071ff 100%) +} + +.dutch-theme h1 { + color: #21468b; + text-shadow: 2px 2px 4px rgba(0,0,0,0.2); +} + +.dutch-theme .btn { + background: linear-gradient(135deg, #ff9900 0%, #ff6600 100%); +} + +.dutch-theme .btn:hover { + box-shadow: 0 10px 20px rgba(255, 153, 0, 0.4); +} + +.dutch-theme .question-text { + color: #1a365d; +} + +.dutch-theme .answer-item { + border-left-color: #ff6600; +} + +/* Culture Theme - Warm Earth Tones */ +.culture-theme { + background: linear-gradient(135deg, #8b4513 0%, #d2691e 50%, #cd853f 100%); +} + +.culture-theme h1 { + color: white; + text-shadow: 2px 2px 4px rgba(0,0,0,0.3); +} + +.culture-theme .btn { + background: linear-gradient(135deg, #ffd700 0%, #ffa500 100%); +} + +.culture-theme .btn:hover { + box-shadow: 0 10px 20px rgba(255, 215, 0, 0.4); +} + +.culture-theme .question-text { + color: #2c1810; +} + +.culture-theme .answer-item { + border-left-color: #ffd700; +} + +/* Friends Theme - Friendly Blue and Green */ +.friends-theme { + background: linear-gradient(135deg, #4CAF50 0%, #2196F3 100%); +} + +.friends-theme h1 { + color: white; + text-shadow: 2px 2px 4px rgba(0,0,0,0.3); +} + +.friends-theme .btn { + background: linear-gradient(135deg, #ff6b6b 0%, #feca57 100%); +} + +.friends-theme .btn:hover { + box-shadow: 0 10px 20px rgba(255, 107, 107, 0.4); +} + +.friends-theme .question-text { + color: #1a2a3a; +} + +.friends-theme .answer-item { + border-left-color: #4CAF50; +} + +/* Other Styles */ + +.group-name { + font-size: 1.3rem; + color: #e74c3c; + margin-bottom: 10px; + font-weight: bold; +} + +.recap-item { + margin: 20px 0; + padding: 20px; + background: #f8f9fa; + border-radius: 15px; + text-align: left; +} + +.recap-question { + font-size: 1.2rem; + color: #2c3e50; + margin-bottom: 15px; + font-weight: 500; +} + +.recap-answers { + display: flex; + flex-direction: column; + gap: 10px; +} + +.recap-answer-item { + padding: 12px 15px; + border-radius: 8px; +} + +.recap-answer-item.correct { + background: linear-gradient(135deg, #d4edda 0%, #c3e6cb 100%); + border-left: 4px solid #28a745; + color: #155724; +} + +.recap-answer-item.incorrect { + background: #fff5f5; + border-left: 4px solid #e74c3c; + color: #e74c3c; +} + +.recap-answer-label { + font-size: 0.9rem; + font-weight: 600; + margin-bottom: 5px; +} + +.recap-answer-text { + font-size: 0.95rem; +} + +.recap-image { + max-width: 100%; + max-height: 150px; + margin-top: 10px; + border-radius: 8px; + box-shadow: 0 3px 10px rgba(0,0,0,0.1); +} + +@media (max-width: 600px) { + .container { + padding: 25px; + } + + h1 { + font-size: 1.8rem; + } + + .question-text { + font-size: 1.2rem; + } + + .btn { + padding: 12px 30px; + font-size: 1rem; + } +}