import 'package:flutter/material.dart'; import 'quiz_question_screen.dart'; import 'quiz_result.dart'; // Quiz 6: Tipos de Escova class Quiz6Screen extends StatelessWidget { const Quiz6Screen({super.key, required this.currentScore, this.scopeId}); final int currentScore; final String? scopeId; @override Widget build(BuildContext context) { return QuizQuestionScreen( title: 'Quiz 6/20', question: 'Qual tipo de escova é mais recomendada para crianças?', answers: const [ QuizAnswer( title: 'Escova macia com cabeça pequena', description: 'Escovas macias protegem a gengiva sensível das crianças e a cabeça pequena alcança melhor todos os dentes.', weight: 2, ), QuizAnswer( title: 'Escova dura para limpar melhor', description: 'Escovas duras podem machucar a gengiva e desgastar o esmalte dos dentes das crianças.', weight: 5, ), QuizAnswer( title: 'Escova elétrica sempre é melhor', description: 'Escova elétrica pode ajudar, mas não é essencial. O mais importante é a técnica e frequência.', weight: 3, ), ], currentScore: currentScore, nextRoute: (context, nextScore) => MaterialPageRoute( builder: (_) => Quiz7Screen(currentScore: nextScore, scopeId: scopeId), ), showBackButton: true, ); } } // Quiz 7: Alimentos que Causam Cáries class Quiz7Screen extends StatelessWidget { const Quiz7Screen({super.key, required this.currentScore, this.scopeId}); final int currentScore; final String? scopeId; @override Widget build(BuildContext context) { return QuizQuestionScreen( title: 'Quiz 7/20', question: 'Qual alimento é mais prejudicial para os dentes?', answers: const [ QuizAnswer( title: 'Balas e chicletes pegajosos', description: 'Alimentos pegajosos ficam presos nos dentes por mais tempo, aumentando o risco de cáries.', weight: 2, ), QuizAnswer( title: 'Maçã e cenoura', description: 'Frutas e vegetais crus ajudam a limpar os dentes naturalmente e são saudáveis.', weight: 5, ), QuizAnswer( title: 'Água e leite', description: 'Água ajuda a limpar e leite tem cálcio. São opções saudáveis para os dentes.', weight: 3, ), ], currentScore: currentScore, nextRoute: (context, nextScore) => MaterialPageRoute( builder: (_) => Quiz8Screen(currentScore: nextScore, scopeId: scopeId), ), showBackButton: true, ); } } // Quiz 8: Primeira Visita ao Dentista class Quiz8Screen extends StatelessWidget { const Quiz8Screen({super.key, required this.currentScore, this.scopeId}); final int currentScore; final String? scopeId; @override Widget build(BuildContext context) { return QuizQuestionScreen( title: 'Quiz 8/20', question: 'Quando deve ser a primeira visita ao dentista?', answers: const [ QuizAnswer( title: 'Por volta dos 1 ano de idade', description: 'A primeira visita deve ser assim que o primeiro dentinho nascer ou até o primeiro aniversário.', weight: 2, ), QuizAnswer( title: 'Só quando tiver todos os dentes', description: 'Esperar demais pode permitir que problemas comecem sem detecção precoce.', weight: 5, ), QuizAnswer( title: 'Apenas se sentir dor', description: 'Dor geralmente indica que o problema já está avançado. Prevenção é melhor que tratamento.', weight: 5, ), ], currentScore: currentScore, nextRoute: (context, nextScore) => MaterialPageRoute( builder: (_) => Quiz9Screen(currentScore: nextScore, scopeId: scopeId), ), showBackButton: true, ); } } // Quiz 9: Chupeta e Sucção class Quiz9Screen extends StatelessWidget { const Quiz9Screen({super.key, required this.currentScore, this.scopeId}); final int currentScore; final String? scopeId; @override Widget build(BuildContext context) { return QuizQuestionScreen( title: 'Quiz 9/20', question: 'Até que idade é aceitável usar chupeta?', answers: const [ QuizAnswer( title: 'Até 2-3 anos no máximo', description: 'Após 2-3 anos, chupeta pode causar problemas na dentição e no desenvolvimento da fala.', weight: 2, ), QuizAnswer( title: 'Até 6-7 anos', description: 'Essa idade já é muito tarde e pode causar problemas sérios na arcada dentária.', weight: 5, ), QuizAnswer( title: 'Não tem problema usar sempre', description: 'Uso prolongado pode causar má oclusão, problemas na fala e alterações faciais.', weight: 5, ), ], currentScore: currentScore, nextRoute: (context, nextScore) => MaterialPageRoute( builder: (_) => Quiz10Screen(currentScore: nextScore, scopeId: scopeId), ), showBackButton: true, ); } } // Quiz 10: Água Fluoretada class Quiz10Screen extends StatelessWidget { const Quiz10Screen({super.key, required this.currentScore, this.scopeId}); final int currentScore; final String? scopeId; @override Widget build(BuildContext context) { return QuizQuestionScreen( title: 'Quiz 10/20', question: 'O flúor na água de abastecimento ajuda?', answers: const [ QuizAnswer( title: 'Sim, reduz cáries em até 60%', description: 'Flúor na água é uma das medidas de saúde pública mais eficazes na prevenção de cáries.', weight: 2, ), QuizAnswer( title: 'Não faz diferença nenhuma', description: 'Estudos comprovam que flúor na água reduz significativamente a incidência de cáries.', weight: 5, ), QuizAnswer( title: 'É perigoso e causa problemas', description: 'Nas concentrações corretas, flúor é seguro. O problema é o excesso, não o uso adequado.', weight: 4, ), ], currentScore: currentScore, nextRoute: (context, nextScore) => MaterialPageRoute( builder: (_) => Quiz11Screen(currentScore: nextScore, scopeId: scopeId), ), showBackButton: true, ); } } // Quiz 11: Escovação Noturna class Quiz11Screen extends StatelessWidget { const Quiz11Screen({super.key, required this.currentScore, this.scopeId}); final int currentScore; final String? scopeId; @override Widget build(BuildContext context) { return QuizQuestionScreen( title: 'Quiz 11/20', question: 'Por que a escovação noturna é tão importante?', answers: const [ QuizAnswer( title: 'Menos saliva durante o sono', description: 'Durante a noite produzimos menos saliva, que protege os dentes. Escovação remove placa antes desse período vulnerável.', weight: 2, ), QuizAnswer( title: 'É igual aos outros horários', description: 'A noite é especial porque a produção de saliva diminui, aumentando o risco de cáries.', weight: 4, ), QuizAnswer( title: 'Só por tradição', description: 'Tem fundamento científico. A noite é o período mais crítico para formação de cáries.', weight: 5, ), ], currentScore: currentScore, nextRoute: (context, nextScore) => MaterialPageRoute( builder: (_) => Quiz12Screen(currentScore: nextScore, scopeId: scopeId), ), showBackButton: true, ); } } // Quiz 12: Bebidas Ácidas class Quiz12Screen extends StatelessWidget { const Quiz12Screen({super.key, required this.currentScore, this.scopeId}); final int currentScore; final String? scopeId; @override Widget build(BuildContext context) { return QuizQuestionScreen( title: 'Quiz 12/20', question: 'Qual bebida é mais ácida para os dentes?', answers: const [ QuizAnswer( title: 'Refrigerantes e sucos industrializados', description: 'Refrigerantes e sucos artificiais têm pH muito baixo, corroem o esmalte e causam erosão dental.', weight: 2, ), QuizAnswer( title: 'Água e leite', description: 'Água tem pH neutro e leite é levemente ácido mas protege os dentes com cálcio.', weight: 5, ), QuizAnswer( title: 'Chá sem açúcar', description: 'Chá pode manchar mas é muito menos ácido que refrigerantes e sucos artificiais.', weight: 3, ), ], currentScore: currentScore, nextRoute: (context, nextScore) => MaterialPageRoute( builder: (_) => Quiz13Screen(currentScore: nextScore, scopeId: scopeId), ), showBackButton: true, ); } } // Quiz 13: Dentes de Leite class Quiz13Screen extends StatelessWidget { const Quiz13Screen({super.key, required this.currentScore, this.scopeId}); final int currentScore; final String? scopeId; @override Widget build(BuildContext context) { return QuizQuestionScreen( title: 'Quiz 13/20', question: 'É importante cuidar dos dentes de leite?', answers: const [ QuizAnswer( title: 'Sim, são fundamentais para o desenvolvimento', description: 'Dentes de leite mantêm espaço para os permanentes, auxiliam na fala e mastigação.', weight: 2, ), QuizAnswer( title: 'Não, vão cair de qualquer jeito', description: 'Dentes de leite doentes podem afetar os permanentes e causar problemas no desenvolvimento.', weight: 5, ), QuizAnswer( title: 'Só se doerem', description: 'Mesmo sem dor, problemas nos dentes de leite podem ter consequências sérias futuras.', weight: 4, ), ], currentScore: currentScore, nextRoute: (context, nextScore) => MaterialPageRoute( builder: (_) => Quiz14Screen(currentScore: nextScore, scopeId: scopeId), ), showBackButton: true, ); } } // Quiz 14: Técnica de Escovação class Quiz14Screen extends StatelessWidget { const Quiz14Screen({super.key, required this.currentScore, this.scopeId}); final int currentScore; final String? scopeId; @override Widget build(BuildContext context) { return QuizQuestionScreen( title: 'Quiz 14/20', question: 'Qual é a técnica correta de escovação?', answers: const [ QuizAnswer( title: 'Movimentos circulares suaves', description: 'Movimentos circulares ou vibratórios suaves limpam sem machucar a gengiva e removem a placa eficientemente.', weight: 2, ), QuizAnswer( title: 'Força de um lado para o outro', description: 'Movimentos horizontais fortes podem machucar a gengiva e causar recessão gengival.', weight: 5, ), QuizAnswer( title: 'Só na frente dos dentes', description: 'Precisa escovar todas as faces: frente, atrás e superfície de mastigação.', weight: 4, ), ], currentScore: currentScore, nextRoute: (context, nextScore) => MaterialPageRoute( builder: (_) => Quiz15Screen(currentScore: nextScore, scopeId: scopeId), ), showBackButton: true, ); } } // Quiz 15: Enxaguante Bucal class Quiz15Screen extends StatelessWidget { const Quiz15Screen({super.key, required this.currentScore, this.scopeId}); final int currentScore; final String? scopeId; @override Widget build(BuildContext context) { return QuizQuestionScreen( title: 'Quiz 15/20', question: 'Crianças pequenas podem usar enxaguante bucal?', answers: const [ QuizAnswer( title: 'Só com orientação e produtos específicos', description: 'Crianças pequenas podem engolir o produto. Existem enxaguantes infantis sem álcool e com flúor adequado.', weight: 2, ), QuizAnswer( title: 'Sim, qualquer um serve', description: 'Enxaguantes para adultos podem ter álcool e concentração de flúor inadequada para crianças.', weight: 5, ), QuizAnswer( title: 'Nunca, é perigoso', description: 'Com produto adequado e supervisão, pode ser usado como complemento à higiene oral.', weight: 4, ), ], currentScore: currentScore, nextRoute: (context, nextScore) => MaterialPageRoute( builder: (_) => Quiz16Screen(currentScore: nextScore, scopeId: scopeId), ), showBackButton: true, ); } } // Quiz 16: Lanche Escolar class Quiz16Screen extends StatelessWidget { const Quiz16Screen({super.key, required this.currentScore, this.scopeId}); final int currentScore; final String? scopeId; @override Widget build(BuildContext context) { return QuizQuestionScreen( title: 'Quiz 16/20', question: 'Qual lanche escolar é melhor para os dentes?', answers: const [ QuizAnswer( title: 'Frutas frescas e queijo', description: 'Frutas estimulam salivação e queijo neutraliza ácidos. São opções saudáveis para os dentes.', weight: 2, ), QuizAnswer( title: 'Bolachas recheadas e sucos de caixinha', description: 'Açúcar e amido ficam presos nos dentes, aumentando risco de cáries.', weight: 5, ), QuizAnswer( title: 'Salgadinhos de pacote', description: 'Amidos processados ficam nos dentes e se transformam em açúcar, causando cáries.', weight: 4, ), ], currentScore: currentScore, nextRoute: (context, nextScore) => MaterialPageRoute( builder: (_) => Quiz17Screen(currentScore: nextScore, scopeId: scopeId), ), showBackButton: true, ); } } // Quiz 17: Traumas Dentários class Quiz17Screen extends StatelessWidget { const Quiz17Screen({super.key, required this.currentScore, this.scopeId}); final int currentScore; final String? scopeId; @override Widget build(BuildContext context) { return QuizQuestionScreen( title: 'Quiz 17/20', question: 'O que fazer se um dente de leite cair por trauma?', answers: const [ QuizAnswer( title: 'Procurar dentista imediatamente', description: 'Mesmo sendo dente de leite, é importante avaliar se houve dano nos permanentes ou nosso tecidos.', weight: 2, ), QuizAnswer( title: 'Não fazer nada, nasce outro', description: 'Trauma pode afetar o dente permanente que está em formação ou causar infecções.', weight: 5, ), QuizAnswer( title: 'Tentar recolocar no lugar', description: 'Não se deve recolocar dente de leite avulsionado, apenas os permanentes.', weight: 4, ), ], currentScore: currentScore, nextRoute: (context, nextScore) => MaterialPageRoute( builder: (_) => Quiz18Screen(currentScore: nextScore, scopeId: scopeId), ), showBackButton: true, ); } } // Quiz 18: Mordedura Cruzada class Quiz18Screen extends StatelessWidget { const Quiz18Screen({super.key, required this.currentScore, this.scopeId}); final int currentScore; final String? scopeId; @override Widget build(BuildContext context) { return QuizQuestionScreen( title: 'Quiz 18/20', question: 'O que pode causar problemas na mordida?', answers: const [ QuizAnswer( title: 'Chupeta e sucção de dedo prolongadas', description: 'Hábitos prolongados podem causar mordida cruzada, mordida aberta e outros problemas ortodônticos.', weight: 2, ), QuizAnswer( title: 'Genética apenas', description: 'Embora genética influencie, hábitos como chupeta e sucção são grandes fatores causais.', weight: 4, ), QuizAnswer( title: 'Não tem prevenção possível', description: 'Evitar hábitos prejudiciais e fazer acompanhamento odontológico previne muitos problemas.', weight: 5, ), ], currentScore: currentScore, nextRoute: (context, nextScore) => MaterialPageRoute( builder: (_) => Quiz19Screen(currentScore: nextScore, scopeId: scopeId), ), showBackButton: true, ); } } // Quiz 19: Gengivas Sangrando class Quiz19Screen extends StatelessWidget { const Quiz19Screen({super.key, required this.currentScore, this.scopeId}); final int currentScore; final String? scopeId; @override Widget build(BuildContext context) { return QuizQuestionScreen( title: 'Quiz 19/20', question: 'Gengiva sangrando ao escovar significa?', answers: const [ QuizAnswer( title: 'Inflamação que precisa de tratamento', description: 'Sangramento indica gengivite. Não deve parar de escovar, mas sim procurar tratamento e melhorar a higiene.', weight: 2, ), QuizAnswer( title: 'Normal e não precisa se preocupar', description: 'Sangramento não é normal. Indica inflamação que pode evoluir para problemas mais sérios.', weight: 5, ), QuizAnswer( title: 'Está escovando com força demais', description: 'Força excessiva pode machucar, mas geralmente sangramento indica inflamação gengival.', weight: 3, ), ], currentScore: currentScore, nextRoute: (context, nextScore) => MaterialPageRoute( builder: (_) => Quiz20Screen(currentScore: nextScore, scopeId: scopeId), ), showBackButton: true, ); } } // Quiz 20: Selantes class Quiz20Screen extends StatelessWidget { const Quiz20Screen({super.key, required this.currentScore, this.scopeId}); final int currentScore; final String? scopeId; @override Widget build(BuildContext context) { return QuizQuestionScreen( title: 'Quiz 20/20', question: 'Para que servem os selantes dentários?', answers: const [ QuizAnswer( title: 'Proteger sulcos dos dentes contra cáries', description: 'Selantes são uma resina que preenche sulcos e fissuras dos dentes, protegendo contra cáries.', weight: 2, ), QuizAnswer( title: 'Clarear os dentes', description: 'Selantes não têm função estética de clareamento, apenas protetiva contra cáries.', weight: 5, ), QuizAnswer( title: 'Substituir a escovação', description: 'Selantes complementam a higiene, não substituem a escovação e o fio dental.', weight: 4, ), ], currentScore: currentScore, nextRoute: (context, nextScore) => MaterialPageRoute( builder: (_) => QuizResultScreen(finalScore: nextScore, maxScore: 100, scopeId: scopeId), ), isFinal: true, showBackButton: true, ); } }