/* ОСНОВНАЯ ОБЁРТКА */ .test-wrapper { max-width: 600px; margin: 40px auto; padding: 20px; background: #fff; border-radius: 8px; box-shadow: 0 2px 6px rgba(0,0,0,0.1); display: flex; flex-direction: column; gap: 20px; position: relative; } /* КНОПКА «НАЗАД» */ .back-button { position: absolute; top: 20px; left: 20px; font-size: 1.4rem; background: none; border: none; cursor: pointer; color: #333; transition: color 0.2s; } .back-button:hover { color: #555; } /* ПРОГРЕСС-БАР */ .progress-row { display: flex; align-items: center; gap: 10px; color: #666; font-size: 0.9rem; } .progress-bar { flex: 1; height: 8px; background-color: #eee; border-radius: 4px; position: relative; overflow: hidden; } .progress-fill { height: 100%; width: 0%; background-color: #4caf50; transition: width 0.4s ease; } /* БЛОК ВОПРОСА */ .question-container { display: flex; flex-direction: column; gap: 24px; min-height: 120px; } .question-title { font-size: 1.2rem; color: #333; line-height: 1.4; } /* СПИСОК ВАРИАНТОВ */ .options { display: flex; flex-direction: column; gap: 12px; } /* ОТДЕЛЬНЫЙ ВАРИАНТ */ .option { display: flex; align-items: center; padding: 12px; border: 1px solid #e2e2e2; border-radius: 6px; cursor: pointer; transition: border-color 0.2s; } .option:hover { border-color: #ccc; } /* Скрываем реальный input[type=radio] */ .option input[type="radio"] { display: none; } /* КРУЖОК */ .custom-radio { width: 20px; height: 20px; border: 2px solid #ccc; border-radius: 50%; margin-right: 12px; position: relative; } .custom-radio::after { content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) scale(0); width: 10px; height: 10px; background: #4caf50; border-radius: 50%; transition: transform 0.2s ease; } /* При :checked появляется зелёная точка */ .option input[type="radio"]:checked + .custom-radio::after { transform: translate(-50%, -50%) scale(1); } .option-label { color: #333; font-size: 1rem; line-height: 1.4; } /* ПОДСВЕТКА ПРАВИЛЬНОГО/НЕПРАВИЛЬНОГО */ .correct-answer { background-color: #e1f5e1; /* мягко-зелёный */ border-color: #79c979; } .wrong-answer { background-color: #fde4e4; /* мягко-красный */ border-color: #f79999; } /* АНИМАЦИИ ПЕРЕХОДА (только прозрачность) */ .fade-in { animation: fadeIn 0.4s ease forwards; } .fade-out { animation: fadeOut 0.4s ease forwards; } @keyframes fadeIn { 0% { opacity: 0; } 100% { opacity: 1; } } @keyframes fadeOut { 0% { opacity: 1; } 100% { opacity: 0; } } /* БЛОК РЕЗУЛЬТАТОВ */ .result-container { display: none; } .results-split { display: flex; flex-direction: row; gap: 20px; } .results-left { flex: 1; } .results-right { flex: 1; display: flex; justify-content: center; align-items: center; } .results-left h2 { font-size: 1.4rem; margin-bottom: 10px; color: #333; } .resultText { font-size: 1rem; margin-bottom: 20px; color: #555; } /* КНОПКА «ПРОЙТИ ТЕСТ ЕЩЁ РАЗ» */ .retryBtn { padding: 10px 20px; background-color: #007bff; border-radius: 4px; border: none; color: #fff; font-size: 1rem; cursor: pointer; transition: background-color 0.2s ease; } .retryBtn:hover { background-color: #0056cc; }