munchboka-edutools 0.2.3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of munchboka-edutools might be problematic. Click here for more details.
- munchboka_edutools/__init__.py +184 -0
- munchboka_edutools/_plotmath_shim.py +126 -0
- munchboka_edutools/_version.py +2 -0
- munchboka_edutools/directives/__init__.py +1 -0
- munchboka_edutools/directives/admonitions.py +389 -0
- munchboka_edutools/directives/cas_popup.py +428 -0
- munchboka_edutools/directives/clear.py +103 -0
- munchboka_edutools/directives/dialogue.py +137 -0
- munchboka_edutools/directives/escape_room.py +296 -0
- munchboka_edutools/directives/escape_room2.py +318 -0
- munchboka_edutools/directives/factor_tree.py +552 -0
- munchboka_edutools/directives/flashcards.py +233 -0
- munchboka_edutools/directives/ggb.py +209 -0
- munchboka_edutools/directives/ggb_icon.py +105 -0
- munchboka_edutools/directives/ggb_popup.py +308 -0
- munchboka_edutools/directives/horner.py +326 -0
- munchboka_edutools/directives/interactive_code.py +75 -0
- munchboka_edutools/directives/jeopardy.py +252 -0
- munchboka_edutools/directives/jeopardy2.py +636 -0
- munchboka_edutools/directives/multi_plot.py +2524 -0
- munchboka_edutools/directives/multi_plot2.py +252 -0
- munchboka_edutools/directives/pair_puzzle.py +191 -0
- munchboka_edutools/directives/parsons.py +109 -0
- munchboka_edutools/directives/plot.py +3758 -0
- munchboka_edutools/directives/poly_icon.py +111 -0
- munchboka_edutools/directives/polydiv.py +346 -0
- munchboka_edutools/directives/popup.py +245 -0
- munchboka_edutools/directives/quiz.py +291 -0
- munchboka_edutools/directives/quiz2.py +453 -0
- munchboka_edutools/directives/signchart.py +519 -0
- munchboka_edutools/directives/signchart2.py +1545 -0
- munchboka_edutools/directives/timed_quiz.py +436 -0
- munchboka_edutools/directives/turtle.py +157 -0
- munchboka_edutools/static/css/admonitions.css +2012 -0
- munchboka_edutools/static/css/cas_popup.css +242 -0
- munchboka_edutools/static/css/code_mirror_themes/github_dark_cm.css +112 -0
- munchboka_edutools/static/css/code_mirror_themes/github_dark_default_cm.css +40 -0
- munchboka_edutools/static/css/code_mirror_themes/github_dark_high_contrast_cm.css +141 -0
- munchboka_edutools/static/css/code_mirror_themes/github_light_cm.css +120 -0
- munchboka_edutools/static/css/code_mirror_themes/github_light_default_cm.css +108 -0
- munchboka_edutools/static/css/code_mirror_themes/one_dark_cm.css +121 -0
- munchboka_edutools/static/css/dialogue.css +92 -0
- munchboka_edutools/static/css/escapeRoom/escape-room.css +223 -0
- munchboka_edutools/static/css/figures.css +321 -0
- munchboka_edutools/static/css/flashcards.css +219 -0
- munchboka_edutools/static/css/general_style.css +74 -0
- munchboka_edutools/static/css/github-dark-high-contrast.css +141 -0
- munchboka_edutools/static/css/github-dark.css +147 -0
- munchboka_edutools/static/css/github-light.css +155 -0
- munchboka_edutools/static/css/interactive_code/style.css +575 -0
- munchboka_edutools/static/css/interactive_code.css +582 -0
- munchboka_edutools/static/css/jeopardy.css +553 -0
- munchboka_edutools/static/css/pairPuzzle/style.css +177 -0
- munchboka_edutools/static/css/parsons/parsonsPuzzle.css +331 -0
- munchboka_edutools/static/css/popup.css +115 -0
- munchboka_edutools/static/css/quiz.css +377 -0
- munchboka_edutools/static/css/timedQuiz.css +375 -0
- munchboka_edutools/static/icons/ggb/mode_evaluate.svg +1 -0
- munchboka_edutools/static/icons/ggb/mode_extremum.svg +1 -0
- munchboka_edutools/static/icons/ggb/mode_intersect.svg +1 -0
- munchboka_edutools/static/icons/ggb/mode_nsolve.svg +1 -0
- munchboka_edutools/static/icons/ggb/mode_numeric.svg +1 -0
- munchboka_edutools/static/icons/ggb/mode_point.svg +1 -0
- munchboka_edutools/static/icons/ggb/mode_solve.svg +1 -0
- munchboka_edutools/static/icons/misc/windows-logo.svg +1 -0
- munchboka_edutools/static/icons/outline/dark_mode/academic.svg +3 -0
- munchboka_edutools/static/icons/outline/dark_mode/backward.svg +3 -0
- munchboka_edutools/static/icons/outline/dark_mode/book.svg +3 -0
- munchboka_edutools/static/icons/outline/dark_mode/chat_bubble.svg +3 -0
- munchboka_edutools/static/icons/outline/dark_mode/check.svg +3 -0
- munchboka_edutools/static/icons/outline/dark_mode/cmd_line.svg +3 -0
- munchboka_edutools/static/icons/outline/dark_mode/file.svg +1 -0
- munchboka_edutools/static/icons/outline/dark_mode/fire.svg +4 -0
- munchboka_edutools/static/icons/outline/dark_mode/key.svg +3 -0
- munchboka_edutools/static/icons/outline/dark_mode/magnifying.svg +3 -0
- munchboka_edutools/static/icons/outline/dark_mode/pencil_square.svg +3 -0
- munchboka_edutools/static/icons/outline/dark_mode/play.svg +3 -0
- munchboka_edutools/static/icons/outline/dark_mode/question.svg +3 -0
- munchboka_edutools/static/icons/outline/dark_mode/square_check.svg +1 -0
- munchboka_edutools/static/icons/outline/dark_mode/stop.svg +3 -0
- munchboka_edutools/static/icons/outline/dark_mode/summary.svg +3 -0
- munchboka_edutools/static/icons/outline/dark_mode/undo.svg +3 -0
- munchboka_edutools/static/icons/outline/dark_mode/unlock.svg +3 -0
- munchboka_edutools/static/icons/outline/light_mode/academic.svg +3 -0
- munchboka_edutools/static/icons/outline/light_mode/backward.svg +3 -0
- munchboka_edutools/static/icons/outline/light_mode/book.svg +3 -0
- munchboka_edutools/static/icons/outline/light_mode/chat_bubble.svg +3 -0
- munchboka_edutools/static/icons/outline/light_mode/check.svg +3 -0
- munchboka_edutools/static/icons/outline/light_mode/cmd_line.svg +3 -0
- munchboka_edutools/static/icons/outline/light_mode/file.svg +1 -0
- munchboka_edutools/static/icons/outline/light_mode/fire.svg +4 -0
- munchboka_edutools/static/icons/outline/light_mode/key.svg +3 -0
- munchboka_edutools/static/icons/outline/light_mode/magnifying.svg +3 -0
- munchboka_edutools/static/icons/outline/light_mode/pencil_square.svg +3 -0
- munchboka_edutools/static/icons/outline/light_mode/play.svg +3 -0
- munchboka_edutools/static/icons/outline/light_mode/question.svg +3 -0
- munchboka_edutools/static/icons/outline/light_mode/square_check.svg +1 -0
- munchboka_edutools/static/icons/outline/light_mode/stop.svg +3 -0
- munchboka_edutools/static/icons/outline/light_mode/summary.svg +3 -0
- munchboka_edutools/static/icons/outline/light_mode/undo.svg +3 -0
- munchboka_edutools/static/icons/outline/light_mode/unlock.svg +3 -0
- munchboka_edutools/static/icons/polyicons/cubicdown.svg +3 -0
- munchboka_edutools/static/icons/polyicons/cubicup.svg +3 -0
- munchboka_edutools/static/icons/polyicons/frown.svg +3 -0
- munchboka_edutools/static/icons/polyicons/smile.svg +3 -0
- munchboka_edutools/static/icons/solid/dark_mode/academic.svg +5 -0
- munchboka_edutools/static/icons/solid/dark_mode/backward.svg +3 -0
- munchboka_edutools/static/icons/solid/dark_mode/book.svg +3 -0
- munchboka_edutools/static/icons/solid/dark_mode/brain.svg +1 -0
- munchboka_edutools/static/icons/solid/dark_mode/file.svg +1 -0
- munchboka_edutools/static/icons/solid/dark_mode/fire.svg +3 -0
- munchboka_edutools/static/icons/solid/dark_mode/key.svg +3 -0
- munchboka_edutools/static/icons/solid/dark_mode/pencil_square.svg +4 -0
- munchboka_edutools/static/icons/solid/dark_mode/play.svg +3 -0
- munchboka_edutools/static/icons/solid/dark_mode/python.svg +1 -0
- munchboka_edutools/static/icons/solid/dark_mode/scroll.svg +1 -0
- munchboka_edutools/static/icons/solid/dark_mode/stop.svg +3 -0
- munchboka_edutools/static/icons/solid/light_mode/academic.svg +5 -0
- munchboka_edutools/static/icons/solid/light_mode/backward.svg +3 -0
- munchboka_edutools/static/icons/solid/light_mode/book.svg +3 -0
- munchboka_edutools/static/icons/solid/light_mode/brain.svg +1 -0
- munchboka_edutools/static/icons/solid/light_mode/file.svg +1 -0
- munchboka_edutools/static/icons/solid/light_mode/fire.svg +3 -0
- munchboka_edutools/static/icons/solid/light_mode/key.svg +3 -0
- munchboka_edutools/static/icons/solid/light_mode/pencil_square.svg +4 -0
- munchboka_edutools/static/icons/solid/light_mode/play.svg +3 -0
- munchboka_edutools/static/icons/solid/light_mode/python.svg +1 -0
- munchboka_edutools/static/icons/solid/light_mode/scroll.svg +1 -0
- munchboka_edutools/static/icons/solid/light_mode/stop.svg +3 -0
- munchboka_edutools/static/icons/stickers/edit.svg +1 -0
- munchboka_edutools/static/icons/stickers/pencil_square.svg +3 -0
- munchboka_edutools/static/js/casThemeManager.js +99 -0
- munchboka_edutools/static/js/escapeRoom/escape-room.js +219 -0
- munchboka_edutools/static/js/flashcards.js +199 -0
- munchboka_edutools/static/js/geogebra-setup.js +6 -0
- munchboka_edutools/static/js/highlight-init.js +6 -0
- munchboka_edutools/static/js/interactiveCode/codeEditor.js +648 -0
- munchboka_edutools/static/js/interactiveCode/interactiveCodeSetup.js +441 -0
- munchboka_edutools/static/js/interactiveCode/pythonRunner.js +336 -0
- munchboka_edutools/static/js/interactiveCode/turtleCode.js +203 -0
- munchboka_edutools/static/js/interactiveCode/workerManager.js +353 -0
- munchboka_edutools/static/js/jeopardy.js +560 -0
- munchboka_edutools/static/js/pairPuzzle/draggableItem.js +64 -0
- munchboka_edutools/static/js/pairPuzzle/dropZone.js +119 -0
- munchboka_edutools/static/js/pairPuzzle/game.js +160 -0
- munchboka_edutools/static/js/parsons/parsonsPuzzle.js +641 -0
- munchboka_edutools/static/js/popup.js +85 -0
- munchboka_edutools/static/js/quiz.js +566 -0
- munchboka_edutools/static/js/skulpt/skulpt.js +35721 -0
- munchboka_edutools/static/js/timedQuiz/multipleChoiceQuestion.js +184 -0
- munchboka_edutools/static/js/timedQuiz/timedMultipleChoiceQuiz.js +244 -0
- munchboka_edutools/static/js/timedQuiz/utils.js +6 -0
- munchboka_edutools/static/js/utils.js +3 -0
- munchboka_edutools-0.2.3.dist-info/METADATA +109 -0
- munchboka_edutools-0.2.3.dist-info/RECORD +157 -0
- munchboka_edutools-0.2.3.dist-info/WHEEL +4 -0
- munchboka_edutools-0.2.3.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,321 @@
|
|
|
1
|
+
.figure .caption {
|
|
2
|
+
text-align: left !important;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
/* Prevents equations as svg-files to be clickable links */
|
|
6
|
+
a.no-click {
|
|
7
|
+
pointer-events: none !important;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
.image .caption {
|
|
12
|
+
text-align: left !important;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
.inline-image {
|
|
17
|
+
width: 35px; /* Fixed width */
|
|
18
|
+
height: auto; /* Maintain aspect ratio */
|
|
19
|
+
vertical-align: middle; /* Align with text */
|
|
20
|
+
border: 1px solid #006aff; /* Add a border */
|
|
21
|
+
border-radius: 8px !important; /* Rounded corners */
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
[data-mode="light"] .inline-image {
|
|
25
|
+
filter: invert(0%); /* Normal */
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
[data-mode="dark"] .inline-image {
|
|
29
|
+
filter: invert(100%) hue-rotate(180deg) !important; /* Invert colors for dark mode */
|
|
30
|
+
background-color: inherit !important;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/* Auto mode with system preference */
|
|
34
|
+
@media (prefers-color-scheme: dark) {
|
|
35
|
+
[data-mode="auto"] .inline-image {
|
|
36
|
+
filter: invert(100%) hue-rotate(180deg) !important; /* Invert colors for dark mode */
|
|
37
|
+
background-color: inherit !important;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/* Auto mode with system preference */
|
|
42
|
+
@media (prefers-color-scheme: light) {
|
|
43
|
+
[data-mode="auto"] .inline-image {
|
|
44
|
+
filter: invert(0%) !important; /* Normal */
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
/* CSS rules for logo */
|
|
50
|
+
.navbar-brand img {
|
|
51
|
+
width: 150px; /* Adjust the width as needed */
|
|
52
|
+
height: auto; /* Maintain the aspect ratio */
|
|
53
|
+
border-radius: 16px;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
/* Base styles for figures */
|
|
59
|
+
.adaptive-figure img,
|
|
60
|
+
.adaptive-figure svg {
|
|
61
|
+
/* background: transparent !important;
|
|
62
|
+
background-color: inherit !important; */
|
|
63
|
+
transition: filter 0.1s ease; /* Smooth transition between modes */
|
|
64
|
+
max-width: 100%;
|
|
65
|
+
/* height: auto; */
|
|
66
|
+
display: block;
|
|
67
|
+
/* margin: 1em auto; */
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/* Light mode (default) */
|
|
71
|
+
[data-mode="light"] .adaptive-figure img,
|
|
72
|
+
[data-mode="light"] .adaptive-figure svg,
|
|
73
|
+
[data-mode="light"] img.adaptive-figure {
|
|
74
|
+
filter: invert(0%); /* Normal */
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/* Dark mode styles */
|
|
78
|
+
[data-mode="dark"] .adaptive-figure img,
|
|
79
|
+
[data-mode="dark"] .adaptive-figure svg,
|
|
80
|
+
[data-mode="dark"] img.adaptive-figure {
|
|
81
|
+
filter: invert(100%) hue-rotate(180deg) !important;
|
|
82
|
+
/* background: transparent !important; */
|
|
83
|
+
background-color: inherit !important;
|
|
84
|
+
/* background-color: #f2f2f2 !important; */
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/* Auto mode with system preference */
|
|
88
|
+
@media (prefers-color-scheme: dark) {
|
|
89
|
+
[data-mode="auto"] .adaptive-figure img,
|
|
90
|
+
[data-mode="auto"] .adaptive-figure svg,
|
|
91
|
+
[data-mode="auto"] img.adaptive-figure {
|
|
92
|
+
filter: invert(100%) hue-rotate(180deg) !important;
|
|
93
|
+
background-color: inherit !important;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/* Auto mode with system preference */
|
|
98
|
+
@media (prefers-color-scheme: light) {
|
|
99
|
+
[data-mode="auto"] .adaptive-figure img,
|
|
100
|
+
[data-mode="auto"] .adaptive-figure svg,
|
|
101
|
+
[data-mode="auto"] img.adaptive-figure {
|
|
102
|
+
filter: invert(0%) !important;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
/* Plot-specific SVG styles (graph-inline-svg class) */
|
|
108
|
+
svg.graph-inline-svg {
|
|
109
|
+
transition: filter 0.1s ease; /* Smooth transition between modes */
|
|
110
|
+
max-width: 100%;
|
|
111
|
+
display: block;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/* Light mode for plot SVGs */
|
|
115
|
+
[data-mode="light"] svg.graph-inline-svg {
|
|
116
|
+
filter: invert(0%); /* Normal */
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
/* Dark mode for plot SVGs - invert colors for better visibility */
|
|
120
|
+
[data-mode="dark"] svg.graph-inline-svg {
|
|
121
|
+
filter: invert(100%) hue-rotate(180deg) !important;
|
|
122
|
+
background-color: inherit !important;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
/* Auto mode with system preference for plot SVGs */
|
|
126
|
+
@media (prefers-color-scheme: dark) {
|
|
127
|
+
[data-mode="auto"] svg.graph-inline-svg {
|
|
128
|
+
filter: invert(100%) hue-rotate(180deg) !important;
|
|
129
|
+
background-color: inherit !important;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
@media (prefers-color-scheme: light) {
|
|
134
|
+
[data-mode="auto"] svg.graph-inline-svg {
|
|
135
|
+
filter: invert(0%) !important;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
/* Additional specificity for plot figures */
|
|
141
|
+
.plot-figure svg.graph-inline-svg {
|
|
142
|
+
max-width: 100%;
|
|
143
|
+
height: auto;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
[data-mode="dark"] .plot-figure svg.graph-inline-svg {
|
|
147
|
+
filter: invert(100%) hue-rotate(180deg) !important;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
@media (prefers-color-scheme: dark) {
|
|
151
|
+
[data-mode="auto"] .plot-figure svg.graph-inline-svg {
|
|
152
|
+
filter: invert(100%) hue-rotate(180deg) !important;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
/* Base styles for manim gifs */
|
|
159
|
+
.manim-figure img,
|
|
160
|
+
.manim-figure svg {
|
|
161
|
+
background: transparent !important; /* Force transparent background */
|
|
162
|
+
background-color: inherit !important;
|
|
163
|
+
transition: filter 0.1s ease; /* Smooth transition between modes */
|
|
164
|
+
max-width: 100%;
|
|
165
|
+
height: auto;
|
|
166
|
+
display: block;
|
|
167
|
+
margin: 1em auto;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
/* Light mode (default) */
|
|
171
|
+
[data-mode="light"] .manim-figure img {
|
|
172
|
+
filter: invert(100%); /* Normal */
|
|
173
|
+
filter: invert(100%) hue-rotate(180deg) !important; /* Invert colors for dark mode */
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
/* Dark mode styles */
|
|
177
|
+
[data-mode="dark"] .manim-figure img,
|
|
178
|
+
[data-mode="dark"] .manim-figure svg {
|
|
179
|
+
filter: invert(0%); /* Normal */
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
/* Auto mode with system preference */
|
|
183
|
+
@media (prefers-color-scheme: dark) {
|
|
184
|
+
[data-mode="auto"] .manim-figure img {
|
|
185
|
+
filter: invert(0%) !important; /* Normal */
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
/* Auto mode with system preference */
|
|
190
|
+
@media (prefers-color-scheme: light) {
|
|
191
|
+
[data-mode="auto"] .manim-figure img {
|
|
192
|
+
filter: invert(100%) !important;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
/* Light mode (default) */
|
|
203
|
+
[data-mode="light"] video {
|
|
204
|
+
filter: invert(0%) !important; /* Invert colors for dark mode */
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
/* Dark mode styles */
|
|
208
|
+
[data-mode="dark"] video {
|
|
209
|
+
filter: invert(100%) hue-rotate(220deg); /* Normal */
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
/* Auto mode with system preference */
|
|
213
|
+
@media (prefers-color-scheme: dark) {
|
|
214
|
+
[data-mode="auto"] video {
|
|
215
|
+
filter: invert(100%) hue-rotate(220deg) !important; /* Normal */
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
/* Auto mode with system preference */
|
|
220
|
+
@media (prefers-color-scheme: light) {
|
|
221
|
+
[data-mode="auto"] video {
|
|
222
|
+
filter: invert(0%) !important; /* Invert colors for dark mode */
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
|
|
227
|
+
|
|
228
|
+
/* Light mode (default) */
|
|
229
|
+
[data-mode="light"] video.manim-video {
|
|
230
|
+
filter: invert(100%) hue-rotate(220deg) !important; /* Invert colors for dark mode */
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
/* Dark mode styles */
|
|
234
|
+
[data-mode="dark"] video.manim-video {
|
|
235
|
+
filter: invert(0%); /* Normal */
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
/* Auto mode with system preference */
|
|
239
|
+
@media (prefers-color-scheme: dark) {
|
|
240
|
+
[data-mode="auto"] video.manim-video {
|
|
241
|
+
filter: invert(0%) !important; /* Normal */
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
/* Auto mode with system preference */
|
|
246
|
+
@media (prefers-color-scheme: light) {
|
|
247
|
+
[data-mode="auto"] video.manim-video {
|
|
248
|
+
filter: invert(100%) hue-rotate(220deg) !important; /* Invert colors for dark mode */
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
|
|
254
|
+
|
|
255
|
+
.quiz-image-container {
|
|
256
|
+
display: flex;
|
|
257
|
+
justify-content: center;
|
|
258
|
+
width: 100%;
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
.quiz-image {
|
|
262
|
+
max-width: auto;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
figure.align-right {
|
|
267
|
+
margin-left: 0px !important; /* Space between figure and text on the left */
|
|
268
|
+
margin-right: 0; /* No margin on the right edge */
|
|
269
|
+
margin-top: 0; /* Reduce top margin */
|
|
270
|
+
margin-bottom: 15px; /* Some bottom margin for spacing */
|
|
271
|
+
padding: 0px !important;
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
|
|
275
|
+
svg.align-right {
|
|
276
|
+
margin-left: 0px !important; /* Space between figure and text on the left */
|
|
277
|
+
margin-right: 0; /* No margin on the right edge */
|
|
278
|
+
margin-top: 0; /* Reduce top margin */
|
|
279
|
+
margin-bottom: 15px; /* Some bottom margin for spacing */
|
|
280
|
+
padding: 0px !important;
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
|
|
286
|
+
|
|
287
|
+
|
|
288
|
+
/* Base styles for polynomial division figures */
|
|
289
|
+
.polydiv-figure img {
|
|
290
|
+
background: transparent !important; /* Force transparent background */
|
|
291
|
+
transition: filter 0.3s ease; /* Smooth transition between modes */
|
|
292
|
+
max-width: 100%;
|
|
293
|
+
height: auto;
|
|
294
|
+
display: block;
|
|
295
|
+
margin: 1em auto;
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
/* Light mode (default) */
|
|
299
|
+
[data-mode="light"] .polydiv-figure img,
|
|
300
|
+
.polydiv-figure img {
|
|
301
|
+
filter: invert(0%); /* Normal */
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
/* Dark mode styles */
|
|
305
|
+
[data-mode="dark"] .polydiv-figure img {
|
|
306
|
+
filter: invert(100%) hue-rotate(180deg) !important; /* Invert colors for dark mode */
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
/* Auto mode with system preference */
|
|
310
|
+
@media (prefers-color-scheme: dark) {
|
|
311
|
+
[data-mode="auto"] .polydiv-figure img {
|
|
312
|
+
filter: invert(100%) hue-rotate(180deg) !important;
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
/* Auto mode with system preference */
|
|
317
|
+
@media (prefers-color-scheme: light) {
|
|
318
|
+
[data-mode="auto"] .polydiv-figure img {
|
|
319
|
+
filter: invert(0%) !important;
|
|
320
|
+
}
|
|
321
|
+
}
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
--flashcard-bg: #ffffff;
|
|
3
|
+
--flashcard-border: #d1d5db;
|
|
4
|
+
--flashcard-shadow: rgba(15, 23, 42, 0.12);
|
|
5
|
+
--flashcard-text: #111827;
|
|
6
|
+
--flashcard-muted: #6b7280;
|
|
7
|
+
--flashcard-accent: #0ea5e9;
|
|
8
|
+
--flashcard-accent-soft: rgba(14, 165, 233, 0.08);
|
|
9
|
+
--flashcard-control-bg: #f9fafb;
|
|
10
|
+
--flashcard-control-border: #d1d5db;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
[data-mode="dark"] {
|
|
14
|
+
--flashcard-bg: #020617;
|
|
15
|
+
--flashcard-border: #1f2937;
|
|
16
|
+
--flashcard-shadow: rgba(15, 23, 42, 0.7);
|
|
17
|
+
--flashcard-text: #e5e7eb;
|
|
18
|
+
--flashcard-muted: #9ca3af;
|
|
19
|
+
--flashcard-accent: #38bdf8;
|
|
20
|
+
--flashcard-accent-soft: rgba(56, 189, 248, 0.15);
|
|
21
|
+
--flashcard-control-bg: #020617;
|
|
22
|
+
--flashcard-control-border: #374151;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
[data-mode="auto"] {}
|
|
26
|
+
|
|
27
|
+
@media (prefers-color-scheme: dark) {
|
|
28
|
+
[data-mode="auto"] {
|
|
29
|
+
--flashcard-bg: #020617;
|
|
30
|
+
--flashcard-border: #1f2937;
|
|
31
|
+
--flashcard-shadow: rgba(15, 23, 42, 0.7);
|
|
32
|
+
--flashcard-text: #e5e7eb;
|
|
33
|
+
--flashcard-muted: #9ca3af;
|
|
34
|
+
--flashcard-accent: #38bdf8;
|
|
35
|
+
--flashcard-accent-soft: rgba(56, 189, 248, 0.15);
|
|
36
|
+
--flashcard-control-bg: #020617;
|
|
37
|
+
--flashcard-control-border: #374151;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.flashcards-root {
|
|
42
|
+
display: flex;
|
|
43
|
+
flex-direction: column;
|
|
44
|
+
gap: 0.75rem;
|
|
45
|
+
margin: 1.5rem 0;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.flashcards-card-shell {
|
|
49
|
+
display: flex;
|
|
50
|
+
justify-content: center;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.flashcards-card {
|
|
54
|
+
position: relative;
|
|
55
|
+
width: min(640px, 100%);
|
|
56
|
+
min-height: 160px;
|
|
57
|
+
padding: 1.5rem 1.75rem;
|
|
58
|
+
border-radius: 0.9rem;
|
|
59
|
+
border: 1px solid var(--flashcard-border);
|
|
60
|
+
background: radial-gradient(circle at top left, var(--flashcard-accent-soft), transparent 55%), var(--flashcard-bg);
|
|
61
|
+
box-shadow: 0 18px 35px -22px var(--flashcard-shadow);
|
|
62
|
+
color: var(--flashcard-text);
|
|
63
|
+
overflow: hidden;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.flashcards-root[data-side="back"] .flashcards-card {
|
|
67
|
+
background: radial-gradient(circle at top left, rgba(34, 197, 94, 0.12), transparent 55%), var(--flashcard-bg);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.flashcards-card-flip {
|
|
71
|
+
animation: flashcards-flip 0.22s ease-out;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
@keyframes flashcards-flip {
|
|
75
|
+
0% {
|
|
76
|
+
transform: translateY(0) rotateY(0deg);
|
|
77
|
+
opacity: 1;
|
|
78
|
+
}
|
|
79
|
+
50% {
|
|
80
|
+
transform: translateY(-4px) rotateY(7deg);
|
|
81
|
+
opacity: 0.85;
|
|
82
|
+
}
|
|
83
|
+
100% {
|
|
84
|
+
transform: translateY(0) rotateY(0deg);
|
|
85
|
+
opacity: 1;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.flashcards-face {
|
|
90
|
+
transition: opacity 0.24s ease, transform 0.24s ease;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.flashcards-face.back {
|
|
94
|
+
display: none;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.flashcards-root[data-side="back"] .flashcards-face.front {
|
|
98
|
+
display: none;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.flashcards-root[data-side="back"] .flashcards-face.back {
|
|
102
|
+
display: block;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.flashcards-header {
|
|
106
|
+
display: flex;
|
|
107
|
+
justify-content: space-between;
|
|
108
|
+
align-items: center;
|
|
109
|
+
margin-bottom: 0.75rem;
|
|
110
|
+
font-size: 0.8rem;
|
|
111
|
+
text-transform: uppercase;
|
|
112
|
+
letter-spacing: 0.08em;
|
|
113
|
+
color: var(--flashcard-muted);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
.flashcards-progress {
|
|
117
|
+
font-weight: 600;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
.flashcards-pill {
|
|
121
|
+
padding: 0.15rem 0.6rem;
|
|
122
|
+
border-radius: 999px;
|
|
123
|
+
border: 1px solid var(--flashcard-border);
|
|
124
|
+
background-color: rgba(15, 23, 42, 0.02);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
.flashcards-body {
|
|
128
|
+
font-size: 0.98rem;
|
|
129
|
+
line-height: 1.6;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
.flashcards-body pre {
|
|
133
|
+
margin: 0.5rem 0 0;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
.flashcards-body img.flashcard-image {
|
|
137
|
+
max-width: 100%;
|
|
138
|
+
height: auto;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
.flashcards-footer {
|
|
142
|
+
display: flex;
|
|
143
|
+
justify-content: space-between;
|
|
144
|
+
align-items: center;
|
|
145
|
+
margin-top: 0.75rem;
|
|
146
|
+
font-size: 0.8rem;
|
|
147
|
+
color: var(--flashcard-muted);
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
.flashcards-controls {
|
|
151
|
+
display: flex;
|
|
152
|
+
gap: 0.5rem;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
.flashcards-btn {
|
|
156
|
+
border-radius: 999px;
|
|
157
|
+
border: 1px solid var(--flashcard-control-border);
|
|
158
|
+
background-color: var(--flashcard-control-bg);
|
|
159
|
+
color: var(--flashcard-text);
|
|
160
|
+
font-size: 0.8rem;
|
|
161
|
+
padding: 0.4rem 0.75rem;
|
|
162
|
+
display: inline-flex;
|
|
163
|
+
align-items: center;
|
|
164
|
+
gap: 0.25rem;
|
|
165
|
+
cursor: pointer;
|
|
166
|
+
transition: background-color 0.17s ease, transform 0.1s ease, box-shadow 0.1s ease, border-color 0.17s ease;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
.flashcards-btn-primary {
|
|
170
|
+
background-color: var(--flashcard-accent-soft);
|
|
171
|
+
border-color: rgba(56, 189, 248, 0.4);
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
.flashcards-btn:hover {
|
|
175
|
+
background-color: rgba(15, 23, 42, 0.03);
|
|
176
|
+
transform: translateY(-1px);
|
|
177
|
+
box-shadow: 0 8px 18px -12px var(--flashcard-shadow);
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
.flashcards-btn:active {
|
|
181
|
+
transform: translateY(0);
|
|
182
|
+
box-shadow: none;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
.flashcards-btn:disabled {
|
|
186
|
+
opacity: 0.55;
|
|
187
|
+
cursor: default;
|
|
188
|
+
box-shadow: none;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
.flashcards-hotkeys {
|
|
192
|
+
display: none;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
@media (min-width: 640px) {
|
|
196
|
+
.flashcards-hotkeys {
|
|
197
|
+
display: inline-flex;
|
|
198
|
+
gap: 0.4rem;
|
|
199
|
+
align-items: center;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
.flashcards-hotkey-pill {
|
|
203
|
+
padding: 0.1rem 0.45rem;
|
|
204
|
+
border-radius: 999px;
|
|
205
|
+
border: 1px solid rgba(148, 163, 184, 0.8);
|
|
206
|
+
font-size: 0.7rem;
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
@media (max-width: 640px) {
|
|
211
|
+
.flashcards-card {
|
|
212
|
+
padding: 1.15rem 1.25rem;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
.flashcards-controls {
|
|
216
|
+
flex-wrap: wrap;
|
|
217
|
+
justify-content: flex-end;
|
|
218
|
+
}
|
|
219
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/* Minimal default styles for munchboka-edutools */
|
|
2
|
+
.quiz-main-container {
|
|
3
|
+
margin: 1rem 0;
|
|
4
|
+
}
|
|
5
|
+
.quiz-image.adaptive-figure {
|
|
6
|
+
max-width: 100%;
|
|
7
|
+
height: auto;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
/* --- Figure and graph styles --- */
|
|
11
|
+
|
|
12
|
+
/* Prevent any anchor marked no-click from being clickable (used by inline SVG figures) */
|
|
13
|
+
a.no-click,
|
|
14
|
+
.no-scaled-link {
|
|
15
|
+
pointer-events: none !important;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/* Container-level adaptive figure: ensure any contained raster/SVG scales responsively */
|
|
19
|
+
.adaptive-figure img,
|
|
20
|
+
.adaptive-figure svg,
|
|
21
|
+
img.adaptive-figure,
|
|
22
|
+
svg.graph-inline-svg {
|
|
23
|
+
max-width: 100%;
|
|
24
|
+
height: auto;
|
|
25
|
+
display: block;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/* Optional plot figure spacing */
|
|
29
|
+
figure.plot-figure {
|
|
30
|
+
margin: 1em auto;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/* Theme-aware adjustment for dark mode when the theme sets data-mode on <html> */
|
|
34
|
+
[data-mode="dark"] .adaptive-figure img,
|
|
35
|
+
[data-mode="dark"] .adaptive-figure svg,
|
|
36
|
+
[data-mode="dark"] img.adaptive-figure,
|
|
37
|
+
[data-mode="dark"] svg.graph-inline-svg {
|
|
38
|
+
/* Invert for dark mode to preserve contrast of typical light-on-white math figures */
|
|
39
|
+
filter: invert(100%) hue-rotate(180deg) !important;
|
|
40
|
+
background: transparent !important;
|
|
41
|
+
background-color: inherit !important;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/* Auto mode follows system preference; keep same background behavior */
|
|
45
|
+
@media (prefers-color-scheme: dark) {
|
|
46
|
+
[data-mode="auto"] .adaptive-figure img,
|
|
47
|
+
[data-mode="auto"] .adaptive-figure svg,
|
|
48
|
+
[data-mode="auto"] img.adaptive-figure,
|
|
49
|
+
[data-mode="auto"] svg.graph-inline-svg {
|
|
50
|
+
filter: invert(100%) hue-rotate(180deg) !important;
|
|
51
|
+
background: transparent !important;
|
|
52
|
+
background-color: inherit !important;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/* Explicit light mode (or default) keeps figures normal */
|
|
57
|
+
[data-mode="light"] .adaptive-figure img,
|
|
58
|
+
[data-mode="light"] .adaptive-figure svg,
|
|
59
|
+
[data-mode="light"] img.adaptive-figure,
|
|
60
|
+
[data-mode="light"] svg.graph-inline-svg {
|
|
61
|
+
filter: invert(0%) !important;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/* Allow opt-out by adding the class no-invert alongside adaptive-figure */
|
|
65
|
+
.adaptive-figure.no-invert img,
|
|
66
|
+
.adaptive-figure.no-invert svg,
|
|
67
|
+
img.adaptive-figure.no-invert,
|
|
68
|
+
svg.graph-inline-svg.no-invert,
|
|
69
|
+
[data-mode="dark"] .adaptive-figure.no-invert img,
|
|
70
|
+
[data-mode="dark"] .adaptive-figure.no-invert svg,
|
|
71
|
+
[data-mode="auto"] .adaptive-figure.no-invert img,
|
|
72
|
+
[data-mode="auto"] .adaptive-figure.no-invert svg {
|
|
73
|
+
filter: invert(0%) hue-rotate(0deg) !important;
|
|
74
|
+
}
|