diff --git a/app/static/style.css b/app/static/style.css new file mode 100644 index 0000000..d2e35a5 --- /dev/null +++ b/app/static/style.css @@ -0,0 +1,118 @@ +:root { + --primary: #8b0000; /* Dunkelrot */ + --bg: #fdf5e6; /* Pergament */ + --correct: #d4edda; + --wrong: #f8d7da; + --typo: #fff3cd; +} + +body { + font-family: "Georgia", serif; + background: var(--bg); + margin: 0; + display: flex; + flex-direction: column; + min-height: 100vh; +} + +.container { + max-width: 600px; + margin: 0 auto; + padding: 20px; + width: 100%; + flex: 1; + display: flex; + flex-direction: column; + justify-content: center; +} + +h1 { text-align: center; color: #444; border-bottom: 2px solid var(--primary); padding-bottom: 10px; } + +/* Lesson Grid */ +.lesson-grid { + display: grid; + grid-template-columns: repeat(auto-fill, minmax(80px, 1fr)); + gap: 10px; + margin-bottom: 20px; +} +.lesson-item input { display: none; } +.lesson-item label { + display: block; + padding: 10px; + background: #fff; + border: 1px solid #ccc; + text-align: center; + cursor: pointer; +} +.lesson-item input:checked + label { + background: var(--primary); + color: white; + border-color: var(--primary); +} + +.options { + text-align: center; + margin-bottom: 20px; + font-size: 1.1rem; +} + +.card { + background: #fff; + padding: 20px; + border-radius: 8px; + box-shadow: 0 4px 10px rgba(0,0,0,0.1); + text-align: center; + margin-bottom: 20px; +} + +.question { font-size: 2.5rem; font-weight: bold; margin: 10px 0; } +.hint { font-style: italic; color: #666; margin-bottom: 20px; } + +.input-row { + display: flex; + align-items: center; + margin-bottom: 10px; +} +.lbl { width: 50px; font-weight: bold; color: #555; } +input[type="text"] { + flex: 1; + padding: 10px; + font-size: 1.1rem; + border: 2px solid #ddd; + border-radius: 4px; +} + +.correct { background-color: var(--correct); border-color: green !important; } +.wrong { background-color: var(--wrong); border-color: red !important; } +.typo { background-color: var(--typo); border-color: orange !important; } +.incomplete { background-color: #fff3cd; border-color: #ffc107 !important; } + +.quiz-controls { + display: flex; + flex-direction: column; + gap: 10px; +} + +.action-btn { + width: 100%; + padding: 15px; + font-size: 1.1rem; + background: var(--primary); + color: white; + border: none; + cursor: pointer; + font-weight: bold; + border-radius: 5px; +} +.danger { background: #555; } +.action-btn:disabled { opacity: 0.5; } + +.progress-container { + background: #fff; + padding: 10px; + text-align: center; + position: fixed; + bottom: 0; left: 0; right: 0; +} +.progress-bar-bg { height: 10px; background: #eee; width: 100%; margin-top: 5px; } +.progress-bar-fill { height: 100%; background: var(--primary); width: 0%; transition: width 0.3s; } \ No newline at end of file