├── VERSION
├── SortWords
├── back.html
├── style.css
└── fornt.html
├── match_pairs
├── back.html
├── style.css
└── front.html
├── click_word
├── back.html
├── style.css
└── front.html
├── MatchPair(Reverse)
├── Back1.html
├── Back2.html
├── Front1.html
└── Front2.html
├── Interactive_and_Randomized_Cards.apkg
├── Match Pairs and Randomized Cloze.apkg
├── random_basic
├── back.html
├── style.css
└── front.html
├── random_basic_multiple_answers
├── style.css
├── back.html
└── front.html
├── shufle_cloze
├── back.html
└── front.html
├── LICENSE.md
├── random_cloze
├── back.html
├── front.html
└── style.css
├── README.md
├── RandomCloze
├── Front.html
└── Back.html
└── Sequence
├── Front.html
└── Back.html
/VERSION:
--------------------------------------------------------------------------------
1 | 1.0
2 |
--------------------------------------------------------------------------------
/SortWords/back.html:
--------------------------------------------------------------------------------
1 |
2 | {{FrontSide}}
--------------------------------------------------------------------------------
/match_pairs/back.html:
--------------------------------------------------------------------------------
1 |
2 | {{FrontSide}}
--------------------------------------------------------------------------------
/click_word/back.html:
--------------------------------------------------------------------------------
1 |
2 | {{FrontSide}}
--------------------------------------------------------------------------------
/MatchPair(Reverse)/Back1.html:
--------------------------------------------------------------------------------
1 |
2 | {{FrontSide}}
3 | {{Explanations}}
--------------------------------------------------------------------------------
/MatchPair(Reverse)/Back2.html:
--------------------------------------------------------------------------------
1 |
2 | {{FrontSide}}
3 | {{Explanations}}
--------------------------------------------------------------------------------
/Interactive_and_Randomized_Cards.apkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Vilhelm-Ian/Interactive_And_Randomize_Anki_Note_Types/HEAD/Interactive_and_Randomized_Cards.apkg
--------------------------------------------------------------------------------
/Match Pairs and Randomized Cloze.apkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Vilhelm-Ian/Interactive_And_Randomize_Anki_Note_Types/HEAD/Match Pairs and Randomized Cloze.apkg
--------------------------------------------------------------------------------
/random_basic/back.html:
--------------------------------------------------------------------------------
1 | {{Front}}
2 |
3 |
4 |
5 | {{Back}}
6 |
7 |
8 |
--------------------------------------------------------------------------------
/random_basic/style.css:
--------------------------------------------------------------------------------
1 | .card {
2 | font-family: arial;
3 | font-size: 20px;
4 | text-align: center;
5 | color: black;
6 | background-color: white;
7 | }
8 |
9 |
10 | #hidden {
11 | display: none;
12 | }
13 |
14 | .warning {
15 | display: none;
16 | border-radius: 16px;
17 | border: white dotted;
18 | max-width: 90%;
19 | }
20 |
21 | .close {
22 | margin-left: 90%;
23 | }
--------------------------------------------------------------------------------
/random_basic_multiple_answers/style.css:
--------------------------------------------------------------------------------
1 | .card {
2 | font-family: arial;
3 | font-size: 20px;
4 | text-align: center;
5 | color: black;
6 | background-color: white;
7 | }
8 |
9 |
10 | #hidden {
11 | display: none;
12 | }
13 |
14 | .warning {
15 | display: none;
16 | border-radius: 16px;
17 | border: white dotted;
18 | max-width: 90%;
19 | }
20 |
21 | .close {
22 | margin-left: 90%;
23 | }
24 |
25 | .hidden {
26 | display: none;
27 | }
28 |
29 | #error {
30 | color: red;
31 | }
--------------------------------------------------------------------------------
/random_basic_multiple_answers/back.html:
--------------------------------------------------------------------------------
1 | {{Front}}
2 |
3 |
4 | {{Back}}
5 |
6 |
7 |
--------------------------------------------------------------------------------
/shufle_cloze/back.html:
--------------------------------------------------------------------------------
1 | {{cloze::Text}}
2 | {{Back Extra}}
3 |
4 |
--------------------------------------------------------------------------------
/LICENSE.md:
--------------------------------------------------------------------------------
1 | Copyright 2024 Vilhelm-Ian
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
4 |
5 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
6 |
7 | THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
8 |
9 |
--------------------------------------------------------------------------------
/shufle_cloze/front.html:
--------------------------------------------------------------------------------
1 | {{cloze:Text}}
2 |
3 |
--------------------------------------------------------------------------------
/random_basic/front.html:
--------------------------------------------------------------------------------
1 |
2 |
X
3 |
There is a new version of the note type
4 |
Click Here To download it
5 |
If you don't want to be informed about updates click here:
6 |
7 |
8 | {{Front}}
9 |
10 |
11 |
--------------------------------------------------------------------------------
/random_basic_multiple_answers/front.html:
--------------------------------------------------------------------------------
1 |
2 |
X
3 |
There is a new version of the note type
4 |
Click Here To download it
5 |
If you don't want to be informed about updates click here:
6 |
7 |
8 | {{Front}}
9 |
10 | {{Back}}
11 |
12 |
--------------------------------------------------------------------------------
/match_pairs/style.css:
--------------------------------------------------------------------------------
1 | body {
2 | font-family: Arial, sans-serif;
3 | display: flex;
4 | justify-content: center;
5 | align-items: center;
6 | margin: 0;
7 | background-color: #f0f0f0;
8 | font-size: 36px;
9 | display: flex;
10 | align-items: center;
11 | justify-content: center;
12 | min-height: 100vh;
13 | }
14 |
15 |
16 | img {
17 | height: 100%;
18 | max-height: 240px;
19 | max-width: 90%;
20 | object-fit: cover;
21 | }
22 |
23 | .game-container {
24 | background-color: white;
25 | color: black;
26 | padding: 20px;
27 | border-radius: 10px;
28 | box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
29 | min-width: fit-content;
30 | max-height: fit-content;
31 | width: 80%;
32 | max-width: min(90vw, 1024px);
33 | margin: auto;
34 | margin-top: 5px;
35 | margin-bottom: 5px;
36 | }
37 |
38 | .word-lists {
39 | display: grid;
40 | grid-template-columns: 1fr, 1fr;
41 | margin-bottom: 20px;
42 | justify-items: center;
43 | grid-auto-flow: dense;
44 | align-items: center;
45 | column-gap: 4px;
46 | }
47 |
48 | .list {
49 | margin: 0 10px;
50 | display: flex;
51 | flex-direction: column;
52 | align-items: center;
53 | font-size: 20px;
54 | gap: 5px;
55 | }
56 |
57 | .word {
58 | grid-column: 1;
59 | padding: 10px;
60 | height: fit-content;
61 | font-size: clamp(5px, 3vw, 24px);
62 | }
63 |
64 | .match-slot {
65 | grid-column: 2;
66 | margin: 5px 0;
67 | padding: 10px;
68 | cursor: pointer;
69 | border-radius: 5px;
70 | padding-left: 15px;
71 | padding-right: 15px;
72 | width: 90%;
73 | text-align: center;
74 | min-height: fit-content;
75 | font-size: clamp(5px, 3vw, 24px);
76 | min-height: 20px;
77 | border: 1px dashed #ccc;
78 | }
79 |
80 | #horizontalWords {
81 | width: min(33vw, 500px);
82 | display: flex;
83 | justify-content: center;
84 | flex-wrap: wrap;
85 | }
86 |
87 | .horizontal-word {
88 | display: inline-block;
89 | margin: 5px 5px;
90 | padding: 5px;
91 | cursor: pointer;
92 | background-color: #e0e0e0;
93 | border-radius: 3px;
94 | font-size: 2vw;
95 | }
96 |
97 | .matched-word {
98 | background-color: #d4edda;
99 | }
100 |
101 | .checkButton {
102 | display: block;
103 | margin: 20px auto 0;
104 | padding: 10px 20px;
105 | font-size: 16px;
106 | background-color: #007bff;
107 | color: white;
108 | border: none;
109 | border-radius: 5px;
110 | cursor: pointer;
111 | }
112 |
113 |
114 | .nightMode .checkButton:hover {
115 | color: white;
116 | }
117 |
118 | .checkButton:hover {
119 | color: black
120 | }
121 |
122 | #result {
123 | text-align: center;
124 | margin-top: 20px;
125 | font-weight: bold;
126 | min-height: 1.2em;
127 | font-size: clamp(5px, 3vw, 24px);
128 | }
129 |
130 |
131 | #secondList {
132 | text-align: center;
133 | }
134 |
135 | .match-slot:hover {
136 | background-color: #f0f0f0;
137 | }
138 |
139 |
140 | .warning {
141 | display: none;
142 | border-radius: 16px;
143 | border: black dotted;
144 | max-width: 90%;
145 | padding: 10px;
146 | }
147 |
148 | .nightMode .warning {
149 | border: white dotted;
150 | }
151 |
152 | .close {
153 | margin-left: 90%;
154 | }
--------------------------------------------------------------------------------
/click_word/style.css:
--------------------------------------------------------------------------------
1 | body {
2 | font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
3 | background-color: #f0f0f0;
4 | margin: 0;
5 | padding: 0;
6 | display: flex;
7 | justify-content: center;
8 | align-items: center;
9 | min-height: 100vh;
10 | }
11 |
12 | .game-container {
13 | max-width: fit-content;
14 | margin-left: auto;
15 | margin-right: auto;
16 | background-color: white;
17 | border-radius: 20px;
18 | box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
19 | padding: 30px;
20 | width: 90%;
21 | max-width: 600px;
22 | }
23 |
24 | h1 {
25 | color: #58cc02;
26 | text-align: center;
27 | margin-bottom: 30px;
28 | }
29 |
30 | #sentence {
31 | color: black;
32 | font-size: 20px;
33 | line-height: 1.6;
34 | margin-bottom: 30px;
35 | text-align: center;
36 | }
37 |
38 | .blank {
39 | display: inline-block;
40 | width: 120px;
41 | height: 36px;
42 | border: 2px solid #ddd;
43 | border-radius: 18px;
44 | margin: 0 5px;
45 | cursor: pointer;
46 | transition: all 0.3s ease;
47 | text-align: center;
48 | line-height: 36px;
49 | font-weight: bold;
50 | color: #1cb0f6;
51 | }
52 |
53 | .blank:hover {
54 | background-color: #f7f7f7;
55 | }
56 |
57 | #words {
58 | display: flex;
59 | flex-wrap: wrap;
60 | justify-content: center;
61 | margin-top: 30px;
62 | }
63 |
64 | .word {
65 | padding: 10px 20px;
66 | background-color: #fff;
67 | border: 2px solid #1cb0f6;
68 | border-radius: 20px;
69 | margin: 5px;
70 | cursor: pointer;
71 | transition: all 0.3s ease;
72 | font-weight: bold;
73 | color: #1cb0f6;
74 | }
75 |
76 | .word:hover {
77 | background-color: #1cb0f6;
78 | color: white;
79 | }
80 |
81 | #checkButton {
82 | display: block;
83 | margin: 30px auto 0;
84 | padding: 15px 30px;
85 | font-size: 18px;
86 | background-color: #58cc02;
87 | color: white;
88 | border: none;
89 | border-radius: 25px;
90 | cursor: pointer;
91 | transition: all 0.3s ease;
92 | }
93 |
94 | #checkButton:hover {
95 | background-color: #47a501;
96 | }
97 |
98 | @keyframes pulse {
99 | 0% {
100 | transform: scale(1);
101 | }
102 |
103 | 50% {
104 | transform: scale(1.05);
105 | }
106 |
107 | 100% {
108 | transform: scale(1);
109 | }
110 | }
111 |
112 | .correct {
113 | background-color: #d7ffb8 !important;
114 | border-color: #58cc02 !important;
115 | color: #58cc02 !important;
116 | animation: pulse 0.5s ease-in-out;
117 | }
118 |
119 | .incorrect {
120 | background-color: #ffdfe0 !important;
121 | border-color: #ff4b4b !important;
122 | color: #ff4b4b !important;
123 | animation: shake 0.5s ease-in-out;
124 | }
125 |
126 | @keyframes shake {
127 |
128 | 0%,
129 | 100% {
130 | transform: translateX(0);
131 | }
132 |
133 | 25% {
134 | transform: translateX(-5px);
135 | }
136 |
137 | 75% {
138 | transform: translateX(5px);
139 | }
140 | }
141 |
142 | .warning {
143 | display: none;
144 | border-radius: 16px;
145 | border: white dotted;
146 | max-width: 90%;
147 | padding: 10px;
148 | }
149 |
150 | .close {
151 | margin-left: 90%;
152 | }
--------------------------------------------------------------------------------
/random_cloze/back.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
7 |
8 |
9 |
{{Subdeck}}
10 |
11 |
12 |
13 |
14 |
15 |
16 |
{{cloze:Text}}
17 |
18 |
19 |
20 |
21 |
22 | {{#Back Extra}}
23 |
24 |
25 |
{{/Back Extra}}
28 |
29 |
30 | {{#Tags}}
31 |
{{clickable:Tags}}
32 | {{/Tags}}
33 |
52 |
53 |
54 |
55 |
91 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | This deck is designed to make flashcard review a more active process, aiding in the learning of concepts that are difficult to distinguish (e.g., stalactite vs. stalagmite) and preventing rote memorization based on question shape rather than content. It uses randomization for each note type to help you recall information in real-life situations, not just in Anki.
2 |
3 | # Match Pairs
4 | Supports audio, images, and text. Items should be separated by the pipe operator (|). You can include more items on the back of the card than on the front to increase difficulty.
5 | Use this note type to:
6 | - Learn similar concepts that are hard to differentiate.
7 | - Improve listening skills by recognizing minimal pairs. For example did the speaker say "tar" or "car".
8 | - Practice [chunking](https://en.wikipedia.org/wiki/Chunking_(psychology)) concepts together (e.g., bones of the hand, Balkan capitals, planets in the solar system).
9 | - Recognize images (e.g., tortoise vs. turtle, radial bone vs. ulnar bone).
10 |
11 | # Match Pairs (Reverse)
12 | Same as Match pairs but it tests both way. For example, Countries -> Capitals and Capitals -> Countries.
13 |
14 | # Randomized Basic & Randomized Cloze
15 | These note types let you write multiple questions about the same fact. Each time you encounter the note, a random question will be selected. Separate sentences with the pipe operator (|).
16 | Examples:
17 | - Who wrote The Hobbit | What is the name of the author of The Hobbit | Who was the author of The Hobbit?
18 | - The complication with the highest mortality from measles is {{c1::pneumonia}} | Most fatal cases from measles result from {{c1::pneumonia}} | {{c1::Pneumonia}} is the deadliest complication from measles.
19 |
20 | # Randomized Cloze Type in The Answer
21 | Same as randomize cloze but you have to type the answer
22 |
23 | # Click Words
24 | This cloze-style card provides possible choices to complete sentences, making grammar exercises more manageable. For instance, to practice the present continuous tense, you might have a sentence like "Today I am [...] tennis.". The issue with the sentence there are too many correct answers (playing, studying, done through) having choices provided to you (e.g., playing, played, plays) helps control the difficulty level.
25 |
26 | # Shuffle Cloze
27 | This cloze will show you cards with cloze selections randomly swapped. Example:
28 |
29 | Symptoms of essential thrombocythemia are related to an increased risk of {{c1::bleeding}} and/or {{c2::thrombosis}}
30 |
31 | It will show up either as
32 |
33 | Symptoms of essential thrombocythemia are related to an increased risk of thrombosis and/or bleeding
34 |
35 | OR
36 |
37 | Symptoms of essential thrombocythemia are related to an increased risk of bleeding and/or thrombosis
38 |
39 | # Sort Cards
40 | In this note type you define categories and items that belong to these categories. Then you have to put each item in the right "bucket" - you need to match the items and the categories.
41 |
42 | # Sequence
43 | This note type helps you learn concepts that occur in a specific, ordered sequence. You are presented with a bank of elements (some correct, some distractors) that you need to drag and drop into the correct order.
44 |
45 | Use this note type to:
46 | - Learn sequential knowledge, such as the steps in **algorithms** or **biochemical pathways** (e.g., glycolysis, Krebs cycle, electron transport chain).
47 | - Memorize **historical timelines** and the order of events (e.g., the events leading to WW1, Roman emperors).
48 | - Understand **procedural steps** (e.g., scientific method, first aid protocols, cooking recipes).
49 | - Practice **grammatical word order** in different languages.
50 |
51 | # Other peoples note types
52 | - [Puzzle Sentences](https://ankiweb.net/shared/info/1522392024)
53 | - [Interactive card template from cjdduarte](https://forums.ankiweb.net/t/interactive-flashcard-template-with-drag-and-drop-feedback/48977)
54 | - [Anki Template](https://github.com/ikkz/anki-template#ikkz-templates)
55 |
--------------------------------------------------------------------------------
/random_cloze/front.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
7 |
8 |
9 |
{{Subdeck}}
10 |
11 |
12 |
13 |
14 |
15 |
16 |
{{cloze:Text}}
17 |
18 |
19 |
20 |
21 |
22 | {{#Back Extra}}
23 |
24 |
25 |
{{/Back Extra}}
28 |
29 |
30 | {{#Tags}}
31 |
{{clickable:Tags}}
32 | {{/Tags}}
33 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/RandomCloze/Front.html:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
18 |
{{Subdeck}}
19 |
20 |
21 |
22 |
{{cloze:Text}}
23 |
24 |
25 |
26 |
27 |
28 | {{#Tags}}
29 |
{{clickable:Tags}}
30 | {{/Tags}}
31 |
49 |
50 |
51 |
52 |
--------------------------------------------------------------------------------
/click_word/front.html:
--------------------------------------------------------------------------------
1 |
2 |
X
3 |
There is a new version of the note type
4 |
Click Here To download it
5 |
If you don't want to be informed about updates click here:
6 |
7 |
8 | {{Sentence}}
9 | {{Aditional Words}}
10 |
11 |
12 |
{{Title}}
13 |
14 |
15 |
Check Answers
16 |
17 |
18 |
--------------------------------------------------------------------------------
/RandomCloze/Back.html:
--------------------------------------------------------------------------------
1 |
2 |
52 |
53 |
54 |
{{Subdeck}}
55 |
56 |
57 |
58 |
{{cloze:Text}}
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
Your answer:
67 |
68 |
69 |
70 |
Correct answer:
71 |
72 |
73 |
74 |
75 | {{#Back Extra}}
76 |
77 |
80 | {{/Back Extra}}
81 |
82 |
83 | {{#Tags}}
84 |
{{clickable:Tags}}
85 | {{/Tags}}
86 |
104 |
105 |
106 |
107 |
--------------------------------------------------------------------------------
/SortWords/style.css:
--------------------------------------------------------------------------------
1 | /* style.css */
2 |
3 | /* --- Theme Variables --- */
4 | :root {
5 | /* Light Mode (Default) */
6 | --clr-bg: #f4f4f4;
7 | --clr-container-bg: #fff;
8 | --clr-text-primary: #333;
9 | --clr-text-secondary: #555;
10 | --clr-border-light: #ddd;
11 | --clr-border-medium: #ccc;
12 | --clr-border-accent: #7ac0e3;
13 | --clr-word-bg: #aedff7;
14 | --clr-word-border: var(--clr-border-accent);
15 | --clr-word-dragging-bg: var(--clr-border-accent);
16 | --clr-column-header-bg: #e0e0e0;
17 | --clr-column-bg: #f9f9f9;
18 | --clr-drop-zone-hover-bg: #e8f4fd;
19 | --clr-drop-zone-hover-border: var(--clr-border-accent);
20 | --clr-button-bg: #5cb85c;
21 | --clr-button-text: white;
22 | --clr-button-hover-bg: #4cae4c;
23 | --clr-correct-bg: #dff0d8;
24 | --clr-correct-border: var(--clr-button-bg);
25 | --clr-incorrect-bg: #f2dede;
26 | --clr-incorrect-border: #d9534f;
27 | --clr-results-success: green;
28 | --clr-results-error: red;
29 | --clr-results-info: var(--clr-text-secondary);
30 | --clr-button-info-hover-bg: #31b0d5;
31 | --clr-button-info-bg: #5bc0de;
32 |
33 | /* Scrollbar colors (optional, but good for theming) */
34 | --clr-scrollbar-track: #f1f1f1;
35 | --clr-scrollbar-thumb: #c1c1c1;
36 | --clr-scrollbar-thumb-hover: #a8a8a8;
37 | }
38 |
39 | body.nightMode {
40 | /* Dark Mode */
41 | --clr-bg: #2c2c2c;
42 | --clr-button-info-bg: #31b0d5;
43 | --clr-button-info-hover-bg: #5bc0de;
44 | --clr-container-bg: #3a3a3a;
45 | --clr-text-primary: #e0e0e0;
46 | --clr-text-secondary: #b0b0b0;
47 | --clr-border-light: #555;
48 | --clr-border-medium: #777;
49 | /* Adjusted blue for dark bg */
50 | --clr-border-accent: #4a90e2;
51 | /* Darker blue */
52 | --clr-word-bg: #3a5f80;
53 | --clr-word-border: var(--clr-border-accent);
54 | --clr-word-dragging-bg: #2a4f70;
55 | --clr-column-header-bg: #4f4f4f;
56 | --clr-column-bg: #444;
57 | --clr-drop-zone-hover-bg: #4a4a5a;
58 | --clr-drop-zone-hover-border: var(--clr-border-accent);
59 | /* Keep button colors vibrant */
60 | --clr-button-bg: #4cae4c;
61 | --clr-button-text: white;
62 | --clr-button-hover-bg: #5cb85c;
63 | --clr-correct-bg: #3a6a3a;
64 | --clr-correct-border: var(--clr-button-hover-bg);
65 | --clr-incorrect-bg: #7a3a3a;
66 | --clr-incorrect-border: #f48a86;
67 | /* Lighter green */
68 | --clr-results-success: #77dd77;
69 | /* Lighter red */
70 | --clr-results-error: #ff6961;
71 | --clr-results-info: var(--clr-text-secondary);
72 |
73 | /* Scrollbar colors for dark mode */
74 | --clr-scrollbar-track: #444;
75 | --clr-scrollbar-thumb: #666;
76 | --clr-scrollbar-thumb-hover: #888;
77 | }
78 |
79 | /* --- Base Styles using Variables --- */
80 | body {
81 | font-family: sans-serif;
82 | line-height: 1.6;
83 | padding: 20px;
84 | background-color: var(--clr-bg);
85 | /* Set default text color */
86 | color: var(--clr-text-primary);
87 | /* Smooth theme transition */
88 | transition: background-color 0.3s ease, color 0.3s ease;
89 | }
90 |
91 | h1,
92 | h2 {
93 | text-align: center;
94 | color: var(--clr-text-primary);
95 | }
96 |
97 | .game-container {
98 | max-width: 900px;
99 | margin: 20px auto;
100 | background: var(--clr-container-bg);
101 | padding: 30px;
102 | border-radius: 8px;
103 | box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
104 | transition: background-color 0.3s ease;
105 | }
106 |
107 | /* Word Bank */
108 | .word-bank {
109 | border: 2px dashed var(--clr-border-medium);
110 | padding: 15px;
111 | margin-bottom: 20px;
112 | min-height: 60px;
113 | display: flex;
114 | flex-wrap: wrap;
115 | gap: 10px;
116 | align-content: flex-start;
117 | }
118 |
119 | .word-bank h2 {
120 | width: 100%;
121 | margin-bottom: 10px;
122 | font-size: 1em;
123 | text-align: left;
124 | color: var(--clr-text-secondary);
125 | }
126 |
127 | /* Word Item */
128 | .word-item {
129 | background-color: var(--clr-word-bg);
130 | border: 1px solid var(--clr-word-border);
131 | /* Ensure text is readable */
132 | color: var(--clr-text-primary);
133 | padding: 8px 12px;
134 | border-radius: 4px;
135 | cursor: grab;
136 | text-align: center;
137 | user-select: none;
138 | transition: background-color 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;
139 | width: fit-content;
140 | height: fit-content;
141 | }
142 |
143 | .word-item:active {
144 | cursor: grabbing;
145 | }
146 |
147 | /* Drag feedback */
148 | .word-item.dragging {
149 | opacity: 0.5;
150 | background-color: var(--clr-word-dragging-bg);
151 | }
152 |
153 | /* --- Columns Container (Using Grid) --- */
154 | .columns-container {
155 | /* Replaced with grid */
156 | /* display: flex; */
157 | /* Not needed for grid this way */
158 | /* justify-content: space-around; */
159 | display: grid;
160 | /*
161 | * auto-fit: Fit as many columns as possible in the available width.
162 | * minmax(240px, 1fr): Each column must be at least 240px wide.
163 | * If there's extra space, columns expand equally (1fr).
164 | * Adjust 240px based on desired minimum column width.
165 | */
166 | grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
167 | /* Space between grid items (columns) */
168 | gap: 20px;
169 | margin-bottom: 20px;
170 | }
171 |
172 | .category-column {
173 | /* Not needed, grid handles sizing */
174 | /* flex: 1; */
175 | border: 1px solid var(--clr-border-light);
176 | background-color: var(--clr-column-bg);
177 | border-radius: 5px;
178 | /* Keep using flexbox for the *internal* layout of the column (header + dropzone) */
179 | display: flex;
180 | flex-direction: column;
181 | transition: background-color 0.3s ease, border-color 0.3s ease;
182 | /* Ensure columns don't collapse smaller than their content minimum */
183 | /* Prevents grid items from overflowing strangely sometimes */
184 | min-width: 0;
185 | }
186 |
187 | .column-header {
188 | background-color: var(--clr-column-header-bg);
189 | padding: 10px;
190 | text-align: center;
191 | font-weight: bold;
192 | text-transform: capitalize;
193 | border-bottom: 1px solid var(--clr-border-light);
194 | border-top-left-radius: 5px;
195 | border-top-right-radius: 5px;
196 | color: var(--clr-text-primary);
197 | transition: background-color 0.3s ease, border-color 0.3s ease;
198 | /* Optional: Prevent header text from breaking too awkwardly */
199 | word-break: break-word;
200 | }
201 |
202 | .drop-zone {
203 | min-height: 150px;
204 | padding: 10px;
205 | transition: background-color 0.2s ease, border-color 0.2s ease;
206 | display: flex;
207 | /* Words flow left-to-right first */
208 | flex-direction: row;
209 | /* Then wrap to the next line */
210 | flex-wrap: wrap;
211 | gap: 5px;
212 | /* Allows zone to fill space within the column's flex layout */
213 | flex-grow: 1;
214 | /* Align wrapped lines to the top */
215 | align-content: flex-start;
216 | border-bottom-left-radius: 5px;
217 | border-bottom-right-radius: 5px;
218 | /* Scroll handling will be managed by media queries */
219 | overflow: hidden;
220 | }
221 |
222 | .drop-zone.drag-over {
223 | background-color: var(--clr-drop-zone-hover-bg);
224 | border: 2px dashed var(--clr-drop-zone-hover-border);
225 | /* Adjust padding for border change */
226 | padding: 9px;
227 | }
228 |
229 | .button-controls {
230 | display: flex;
231 | /* Center buttons */
232 | justify-content: center;
233 | /* Space between buttons */
234 | gap: 15px;
235 | /* Vertical margin */
236 | margin: 20px 0;
237 | /* Allow buttons to wrap on small screens */
238 | flex-wrap: wrap;
239 | }
240 |
241 | .button-controls button {
242 | padding: 12px 25px;
243 | font-size: 1.1em;
244 | cursor: pointer;
245 | color: var(--clr-button-text);
246 | border: none;
247 | border-radius: 5px;
248 | transition: background-color 0.2s ease, opacity 0.2s ease;
249 | }
250 |
251 | .button-controls button:disabled {
252 | opacity: 0.6;
253 | cursor: not-allowed;
254 | }
255 |
256 |
257 | /* Check button */
258 | #check-button {
259 | display: block;
260 | margin: 20px auto;
261 | padding: 12px 25px;
262 | font-size: 1.1em;
263 | cursor: pointer;
264 | background-color: var(--clr-button-bg);
265 | color: var(--clr-button-text);
266 | border: none;
267 | border-radius: 5px;
268 | transition: background-color 0.2s ease;
269 | }
270 |
271 | #check-button:hover {
272 | background-color: var(--clr-button-hover-bg);
273 | }
274 |
275 | #show-answer-button {
276 | /* Use info color */
277 | background-color: var(--clr-button-info-bg);
278 | }
279 |
280 | #show-answer-button:hover:not(:disabled) {
281 | background-color: var(--clr-button-info-hover-bg);
282 | }
283 |
284 | #check-button,
285 | #show-answer-button {
286 | /* Remove auto margins */
287 | margin: 0;
288 | /* Needed if removing display:block */
289 | display: inline-block;
290 | }
291 |
292 |
293 | /* Validation styles */
294 | .word-item.correct {
295 | background-color: var(--clr-correct-bg);
296 | border-color: var(--clr-correct-border);
297 | }
298 |
299 | .word-item.incorrect {
300 | background-color: var(--clr-incorrect-bg);
301 | border-color: var(--clr-incorrect-border);
302 | }
303 |
304 | #results {
305 | text-align: center;
306 | margin-top: 15px;
307 | font-weight: bold;
308 | transition: color 0.3s ease;
309 | }
310 |
311 | /* Assign specific result colors */
312 | #results[style*="color: green;"] {
313 | color: var(--clr-results-success) !important;
314 | }
315 |
316 | #results[style*="color: red;"] {
317 | color: var(--clr-results-error) !important;
318 | }
319 |
320 | #results[style*="color: rgb(85, 85, 85);"] {
321 | /* Match the specific grey color used in JS */
322 | color: var(--clr-results-info) !important;
323 | }
324 |
325 |
326 | /* --- Responsive Styles --- */
327 | @media (max-width: 768px) {
328 | .game-container {
329 | padding: 15px;
330 | }
331 |
332 | h1 {
333 | font-size: 1.5em;
334 | }
335 |
336 | .columns-container {
337 | /* The grid layout naturally handles stacking now, no need for flex-direction: column */
338 | /* Can reduce gap slightly on smaller screens */
339 | gap: 15px;
340 | }
341 |
342 | /* No width change needed for .category-column as grid handles it */
343 |
344 | .drop-zone {
345 | /* Can be smaller in vertical layout */
346 | min-height: 100px;
347 | /* Limit height */
348 | max-height: 250px;
349 | /* Enable vertical scroll if content exceeds max-height */
350 | overflow-y: auto;
351 | /* Keep wrap for narrow screens */
352 | flex-wrap: wrap;
353 | /* Align wrapped lines to the top */
354 | align-content: flex-start;
355 | }
356 |
357 | .word-bank {
358 | padding: 10px;
359 | gap: 8px;
360 | }
361 |
362 | .word-item {
363 | padding: 6px 10px;
364 | font-size: 0.9em;
365 | }
366 |
367 | #check-button {
368 | padding: 10px 20px;
369 | font-size: 1em;
370 | }
371 |
372 | .button-controls button {
373 | padding: 10px 20px;
374 | font-size: 1em;
375 | }
376 | }
377 |
378 | @media (max-width: 480px) {
379 | h1 {
380 | font-size: 1.3em;
381 | }
382 |
383 | .game-container {
384 | padding: 10px;
385 | }
386 |
387 | .drop-zone {
388 | /* Maybe even smaller on very small screens */
389 | max-height: 200px;
390 | }
391 |
392 | /* Adjust minimum column width for very small screens if needed */
393 | /* Example:
394 | .columns-container {
395 | grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
396 | }
397 | */
398 | }
399 |
400 |
401 | /* --- Optional: Themed Scrollbar Styling (for Webkit browsers like Chrome/Safari/Edge) --- */
402 | ::-webkit-scrollbar {
403 | width: 8px;
404 | height: 8px;
405 | }
406 |
407 | ::-webkit-scrollbar-track {
408 | background: var(--clr-scrollbar-track);
409 | border-radius: 4px;
410 | }
411 |
412 | ::-webkit-scrollbar-thumb {
413 | background-color: var(--clr-scrollbar-thumb);
414 | border-radius: 4px;
415 | /* Creates padding around thumb */
416 | border: 2px solid var(--clr-scrollbar-track);
417 | }
418 |
419 | ::-webkit-scrollbar-thumb:hover {
420 | background-color: var(--clr-scrollbar-thumb-hover);
421 | }
422 |
423 | /* Add styles for Firefox if needed (scrollbar-width, scrollbar-color) */
424 | /* Note: Firefox scrollbar styling is less customizable */
425 | * {
426 | /* Apply basic FF scrollbar colors */
427 | scrollbar-width: thin;
428 | scrollbar-color: var(--clr-scrollbar-thumb) var(--clr-scrollbar-track);
429 | }
--------------------------------------------------------------------------------
/Sequence/Front.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Timeline Builder
7 |
8 |
94 |
95 |
96 |
97 | {{Title}}
98 |
99 |
Sequence
100 |
102 |
103 |
104 |
Elements
105 |
107 |
108 |
109 | {{Events}}
110 |
111 | {{Explanation}}
112 |
374 |
375 |
376 |
--------------------------------------------------------------------------------
/match_pairs/front.html:
--------------------------------------------------------------------------------
1 |
2 |
X
3 |
There is a new version of the note type
4 |
Click Here To download it
5 |
If you don't want to be informed about updates click here:
6 |
7 |
8 |
9 | X
10 | Notification updates have been re-enabled
11 |
12 |
13 |
14 | [sound:_1-second-and-500-milliseconds-of-silence.mp3]
15 | {{First List}}
16 | {{Second List}}
17 | {{Explanations}}
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
Check
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/MatchPair(Reverse)/Front1.html:
--------------------------------------------------------------------------------
1 |
2 |
X
3 |
There is a new version of the note type
4 |
Click Here To download it
5 |
If you don't want to be informed about updates click here:
6 |
7 |
8 |
9 | X
10 | Notification updates have been re-enabled
11 |
12 |
13 |
14 | [sound:_1-second-and-500-milliseconds-of-silence.mp3]
15 | {{First List}}
16 | {{Second List}}
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
Check
25 |
26 |
27 |
28 |
512 |
--------------------------------------------------------------------------------
/MatchPair(Reverse)/Front2.html:
--------------------------------------------------------------------------------
1 |
2 |
X
3 |
There is a new version of the note type
4 |
Click Here To download it
5 |
If you don't want to be informed about updates click here:
6 |
7 |
8 |
9 | X
10 | Notification updates have been re-enabled
11 |
12 |
13 |
14 | [sound:_1-second-and-500-milliseconds-of-silence.mp3]
15 | {{Second List}}
16 | {{First List}}
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
Check
25 |
26 |
27 |
28 |
512 |
--------------------------------------------------------------------------------
/random_cloze/style.css:
--------------------------------------------------------------------------------
1 | /* -------------------------------------------------- PREFERENCES */
2 |
3 |
4 | :root {
5 | --card-max-width: 40em;
6 | --card-text-align: left;
7 | --font-size-regular: 16px;
8 | --font-size-small: 14px;
9 | --img-width: 50%;
10 | --img-brightness: 0.95;
11 | --img-filter: none;
12 | --font-weight: light;
13 | --table-radius: 0.8em;
14 | --card-radius: 8px;
15 | --mochi-toggle: block;
16 | }
17 |
18 | .mobile {
19 | --card-max-width: 40em;
20 | --card-text-align: left;
21 | --font-size-regular: 16px;
22 | --font-size-small: 14px;
23 | --img-width: 50%;
24 | --img-brightness: 0.95;
25 | --img-filter: none;
26 | --font-weight: light;
27 | --table-radius: 0.8em;
28 | --card-radius: 8px;
29 | --mochi-mobile-toggle: block;
30 | }
31 |
32 | /*
33 | --------------------------------------------- THEME VARIABLES
34 | */
35 |
36 | .card {
37 | --card-bg: #EFF1F5;
38 | --text-fg: #4C4F69;
39 | --text-fg-faint: #6C6F85;
40 | --text-bg-selected: #BCC0CC;
41 | --card-border: #BCC0CC;
42 | --card-box-shadow: #0000001f;
43 | --divider: #BCC0CC;
44 | --tag-fg: #5C5F77;
45 | --tag-bg: #9CA0B0;
46 | --tag-fg-active: #DE9584;
47 | --tag-bg-active: #ACB0BE;
48 | --tag-border: transparent;
49 | --cloze-fg: #E49320;
50 | --cloze-bg: #EFF1F5;
51 | --link-fg: #2A6EF5;
52 | --link-bg: transparent;
53 | --link-fg-active: #04A5E5;
54 | --link-bg-active: transparent;
55 | --bold-fg: #E49320;
56 | --italic-fg: #40A02B;
57 | --h1-fg: #40A02B;
58 | --h2-fg: #179299;
59 | --h3-fg: #8839EF;
60 | --h4-fg: #D20F39;
61 | --h5-fg: #04A5E5;
62 | --bold-italic-fg: var(--bold-fg);
63 | --highlight1: #E64553;
64 | --highlight2: #40A02B;
65 | --highlight3: #7287FD;
66 | --highlight4: #FE640B;
67 | --scheme-rosewater: #DE9584;
68 | --scheme-flamingo: #DD7878;
69 | --scheme-pink: #EC83D0;
70 | --scheme-mauve: #8839EF;
71 | --scheme-red: #D20F39;
72 | --scheme-maroon: #E64553;
73 | --scheme-peach: #FE640B;
74 | --scheme-yellow: #E49320;
75 | --scheme-green: #40A02B;
76 | --scheme-teal: #179299;
77 | --scheme-sky: #04A5E5;
78 | --scheme-sapphire: #209FB5;
79 | --scheme-blue: #2A6EF5;
80 | --scheme-lavender: #7287FD;
81 | --scheme-crust: #DCE0E8;
82 | --scheme-grey: #6C6F85;
83 | --mark-color: rgba(228, 147, 32, 0.2);
84 | --callout-base: var(--ctp-yellow);
85 | --ctp-rosewater: 222,
86 | 149,
87 | 132;
88 | --ctp-flamingo: 221,
89 | 120,
90 | 120;
91 | --ctp-pink: 236,
92 | 131,
93 | 208;
94 | --ctp-mauve: 136,
95 | 57,
96 | 239;
97 | --ctp-red: 210,
98 | 15,
99 | 57;
100 | --ctp-maroon: 230,
101 | 69,
102 | 83;
103 | --ctp-peach: 254,
104 | 100,
105 | 11;
106 | --ctp-yellow: 228,
107 | 147,
108 | 32;
109 | --ctp-green: 64,
110 | 160,
111 | 43;
112 | --ctp-teal: 23,
113 | 146,
114 | 153;
115 | --ctp-sky: 4,
116 | 165,
117 | 229;
118 | --ctp-sapphire: 32,
119 | 159,
120 | 181;
121 | --ctp-blue: 42,
122 | 110,
123 | 245;
124 | --ctp-lavender: 114,
125 | 135,
126 | 253;
127 | --ctp-text: 76,
128 | 79,
129 | 105;
130 | --ctp-subtext1: 92,
131 | 95,
132 | 119;
133 | --ctp-subtext0: 108,
134 | 111,
135 | 133;
136 | --ctp-overlay2: 124,
137 | 127,
138 | 147;
139 | --ctp-overlay1: 140,
140 | 143,
141 | 161;
142 | --ctp-overlay0: 156,
143 | 160,
144 | 176;
145 | --ctp-surface2: 172,
146 | 176,
147 | 190;
148 | --ctp-surface1: 188,
149 | 192,
150 | 204;
151 | --ctp-surface0: 204,
152 | 208,
153 | 218;
154 | --ctp-base: 239,
155 | 241,
156 | 245;
157 | --ctp-mantle: 230,
158 | 233,
159 | 239;
160 | --ctp-crust: 220,
161 | 224,
162 | 232;
163 | }
164 |
165 | .nightMode.card {
166 | --card-bg: #2e2f31;
167 | --text-fg: #ffffffe6;
168 | --text-fg-faint: #ffffffb3;
169 | --text-bg-selected: #ffffff1f;
170 | --card-border: #ffffff0a;
171 | --card-box-shadow: #0000001f;
172 | --divider: #ffffff1f;
173 | --tag-fg: #ffffffb3;
174 | --tag-bg: #ffffff14;
175 | --tag-fg-active: #ffffff;
176 | --tag-bg-active: #ffffff1f;
177 | --tag-border: transparent;
178 | --cloze-fg: #F9E2AF;
179 | --cloze-bg: #2A2A2A;
180 | --link-fg: #87B0F9;
181 | --link-bg: transparent;
182 | --link-fg-active: #89DCEB;
183 | --link-bg-active: transparent;
184 | --bold-fg: #F9E2AF;
185 | --italic-fg: #A6E3A1;
186 | --h1-fg: #A6E3A1;
187 | --h2-fg: #94E2D5;
188 | --h3-fg: #CBA6F7;
189 | --h4-fg: #F38BA8;
190 | --h5-fg: #89DCEB;
191 | --bold-italic-fg: var(--bold-fg);
192 | --highlight1: #EBA0AC;
193 | --highlight2: #A6E3A1;
194 | --highlight3: #B4BEFE;
195 | --highlight4: #FAB387;
196 | --scheme-rosewater: #F5E0DC;
197 | --scheme-flamingo: #F2CDCD;
198 | --scheme-pink: #F5C2E7;
199 | --scheme-mauve: #CBA6F7;
200 | --scheme-red: #F38BA8;
201 | --scheme-maroon: #EBA0AC;
202 | --scheme-peach: #FAB387;
203 | --scheme-yellow: #F9E2AF;
204 | --scheme-green: #A6E3A1;
205 | --scheme-teal: #94E2D5;
206 | --scheme-sky: #89DCEB;
207 | --scheme-sapphire: #74C7EC;
208 | --scheme-blue: #87B0F9;
209 | --scheme-lavender: #B4BEFE;
210 | --scheme-crust: #000000;
211 | --scheme-grey: #BDBDBD;
212 | --mark-color: rgba(249, 226, 175, 0.2);
213 | --callout-base: var(--ctp-yellow);
214 | --ctp-rosewater: 245,
215 | 224,
216 | 220;
217 | --ctp-flamingo: 242,
218 | 205,
219 | 205;
220 | --ctp-pink: 245,
221 | 194,
222 | 231;
223 | --ctp-mauve: 203,
224 | 166,
225 | 247;
226 | --ctp-red: 243,
227 | 139,
228 | 168;
229 | --ctp-maroon: 235,
230 | 160,
231 | 172;
232 | --ctp-peach: 250,
233 | 179,
234 | 135;
235 | --ctp-yellow: 249,
236 | 226,
237 | 175;
238 | --ctp-green: 166,
239 | 227,
240 | 161;
241 | --ctp-teal: 148,
242 | 226,
243 | 213;
244 | --ctp-sky: 137,
245 | 220,
246 | 235;
247 | --ctp-sapphire: 116,
248 | 199,
249 | 236;
250 | --ctp-blue: 135,
251 | 176,
252 | 249;
253 | --ctp-lavender: 180,
254 | 190,
255 | 254;
256 | --ctp-text: 255,
257 | 255,
258 | 255;
259 | --ctp-subtext1: 210,
260 | 210,
261 | 210;
262 | --ctp-subtext0: 189,
263 | 189,
264 | 189;
265 | --ctp-overlay2: 168,
266 | 168,
267 | 168;
268 | --ctp-overlay1: 147,
269 | 147,
270 | 147;
271 | --ctp-overlay0: 126,
272 | 126,
273 | 126;
274 | --ctp-surface2: 105,
275 | 105,
276 | 105;
277 | --ctp-surface1: 84,
278 | 84,
279 | 84;
280 | --ctp-surface0: 63,
281 | 63,
282 | 63;
283 | --ctp-base: 42,
284 | 42,
285 | 42;
286 | --ctp-mantle: 21,
287 | 21,
288 | 21;
289 | --ctp-crust: 0,
290 | 0,
291 | 0;
292 | }
293 |
294 | /*
295 | ----------------------------------------------- CARD STYLING
296 | */
297 |
298 | /* -------------------------------------------------- BACKGROUND */
299 |
300 | .card {
301 | cursor: default;
302 | padding: 0.5em 0.3em;
303 | }
304 |
305 | html:not(.mobile) .card {
306 | padding: 0.5em;
307 | }
308 |
309 | .card::-webkit-scrollbar {
310 | display: none;
311 | }
312 |
313 | /* --------------------------------------------------- FLASHCARD */
314 |
315 | .prettify-flashcard {
316 | background-color: var(--card-bg);
317 | border-radius: var(--card-radius);
318 | border: 1px solid var(--card-border);
319 | box-shadow: var(--card-box-shadow) 0px 7px 14px 0px, var(--card-box-shadow) 0px 3px 6px 0px;
320 | color: var(--text-fg);
321 | font-family: var(--font-family);
322 | font-size: var(--font-size-regular);
323 | line-height: 1.5;
324 | margin: 0 auto;
325 | max-width: var(--card-max-width);
326 | text-align: var(--card-text-align);
327 | word-wrap: normal;
328 | }
329 |
330 | .prettify-flashcard ::selection {
331 | background-color: var(--text-bg-selected);
332 | }
333 |
334 | .cloze-type {
335 | text-align: left;
336 | }
337 |
338 | /* ------------------------------------------------------ FIELDS
339 | */
340 | .prettify-field {
341 | margin: 1em;
342 | margin-bottom: 1em;
343 | }
344 |
345 | .mobile .prettify-field {
346 | margin: 0.25em;
347 | margin-bottom: 0.75em;
348 | }
349 |
350 | .prettify-field:last-of-type {
351 | margin-bottom: 1.4em;
352 | }
353 |
354 | /* ------------------------------------------------------- CLOZE
355 | */
356 |
357 | .cloze {
358 | border-radius: 0.25em;
359 | font-weight: bold;
360 | background-color: var(--cloze-bg);
361 | color: var(--cloze-fg);
362 | padding: 0 0.1em;
363 | }
364 |
365 | /* -------------------------------------------------------- DECK
366 | */
367 |
368 | .prettify-deck {
369 | margin: 0.75em;
370 | margin-left: 1em;
371 | margin-bottom: 0.5em;
372 | display: flex;
373 | color: var(--text-fg-faint);
374 | font-size: var(--font-size-small);
375 | white-space: nowrap;
376 | text-overflow: ellipsis;
377 | overflow: scroll;
378 | }
379 |
380 | .prettify-deck::-webkit-scrollbar {
381 | display: none;
382 | }
383 |
384 | .mobile .prettify-deck {
385 | margin: 1em;
386 | }
387 |
388 | .prettify-subdeck {
389 | text-overflow: ellipsis;
390 | overflow: clip;
391 | min-width: fit-content;
392 | }
393 |
394 | /* --------------------------------------------------------- TAGS
395 | */
396 |
397 | .prettify-tags {
398 | margin: 0.5em;
399 | margin-left: 1em;
400 | margin-bottom: 1em;
401 | display: flex;
402 | flex-flow: row wrap;
403 | font-size: var(--font-size-small);
404 | }
405 |
406 | .mobile .prettify-tags {
407 | margin: 1em;
408 | }
409 |
410 | .prettify-tag {
411 | all: initial;
412 | background-color: var(--tag-bg);
413 | border-radius: 0.2em;
414 | color: var(--tag-fg);
415 | display: inline;
416 | font-size: var(--font-size-small);
417 | font-family: var(--font-family);
418 | margin: 0.25em;
419 | padding: 0.25em;
420 | transition: all 0.25s;
421 | word-break: break-word;
422 | }
423 |
424 |
425 | .prettify-tag:hover {
426 | background-color: var(--tag-bg-active);
427 | color: var(--tag-fg-active);
428 | cursor: pointer;
429 | }
430 |
431 | .extra {
432 | color: var(--text-fg-faint);
433 | font-size: var(--font-size-small);
434 | }
435 |
436 | /* ----------------------------------------------------- DIVIDER
437 | */
438 |
439 | .prettify-field hr {
440 | border: none;
441 | border-bottom: 1px dashed var(--divider);
442 | background-color: transparent;
443 | width: 80%;
444 | }
445 |
446 | .prettify-divider {
447 | background-color: transparent;
448 | border: none;
449 | border-bottom: 1px dashed var(--divider);
450 | padding: 0;
451 | }
452 |
453 | /* ----------------------------------------------------- TABLES
454 | */
455 |
456 | table {
457 | border-collapse: separate;
458 | border-spacing: 0;
459 | min-width: 60%;
460 | position: relative;
461 | box-align: center;
462 | margin-left: auto;
463 | margin-right: auto;
464 | overflow: scroll;
465 | border: 1px solid;
466 | text-align: center;
467 | border-color: var(--card-border);
468 | margin-top: 10px;
469 | }
470 |
471 | td,
472 | th {
473 | border: 1px solid;
474 | text-align: center;
475 | border-color: var(--card-border);
476 | }
477 |
478 | tr:nth-of-type(odd) {
479 | background-color: var(--card-box-shadow);
480 | }
481 |
482 | /* ------------------------------------------------------- LINKS */
483 |
484 | a,
485 | a:visited {
486 | text-decoration: none;
487 | color: var(--link-fg);
488 | }
489 |
490 | a:hover,
491 | a:active {
492 | text-decoration: underline;
493 | color: var(--link-fg-active);
494 | }
495 |
496 | /* -------------------------------------------------- FORMATTING */
497 |
498 | /* ----------------------------------------------------- HEADERS
499 | */
500 |
501 |
502 | h1 {
503 | color: var(--h1-fg);
504 | margin: 0em;
505 | text-align: center;
506 | }
507 |
508 | h1.title {
509 | color: var(--text-fg);
510 | text-align: center;
511 | }
512 |
513 | h2 {
514 | color: var(--h2-fg);
515 | margin: 0em;
516 | text-align: center;
517 | }
518 |
519 | h2.title {
520 | color: var(--text-fg);
521 | text-align: center;
522 | }
523 |
524 | h3 {
525 | color: var(--h3-fg);
526 | margin: 0em;
527 | text-align: center;
528 | }
529 |
530 | h3.title {
531 | color: var(--text-fg);
532 | text-align: center;
533 | }
534 |
535 | h4 {
536 | color: var(--h4-fg);
537 | margin: 0em;
538 | text-align: center;
539 | }
540 |
541 | h4.title {
542 | color: var(--text-fg);
543 | text-align: center;
544 | }
545 |
546 | h5 {
547 | color: var(--h5-fg);
548 | margin: 0em;
549 | text-align: center;
550 | }
551 |
552 | h5.title {
553 | color: var(--text-fg);
554 | text-align: center;
555 | }
556 |
557 | h6 {
558 | color: var(--h6-fg);
559 | margin: 0em;
560 | text-align: center;
561 | }
562 |
563 | h6.title {
564 | color: var(--text-fg);
565 | text-align: center;
566 | }
567 |
568 | /*
569 | -------------------------------------------------- HIGHLIGHT */
570 |
571 | hl {
572 | color: var(--highlight1);
573 | }
574 |
575 | hl2 {
576 | color: var(--highlight2);
577 | }
578 |
579 | hl3 {
580 | color: var(--highlight3);
581 | }
582 |
583 | hl4 {
584 | color: var(--highlight4);
585 | }
586 |
587 | /*
588 | ------------------------------------------- OTHER FORMATTING */
589 |
590 | pre {
591 | font-size: var(--font-size-small);
592 | background-color: var(--cloze-bg);
593 | padding: 10px;
594 | border-radius: calc(var(--card-radius) * 0.5);
595 | max-width: fit-content;
596 | min-width: 80%;
597 | margin: 0 auto;
598 | }
599 |
600 | .title-field {
601 | color: var(--text-fg);
602 | font-size: 140%;
603 | font-weight: bold;
604 | }
605 |
606 | :is(h1, h2, h3, h4, h5, h6)+ :is(ul, ol) {
607 | margin-block-start: 5px;
608 | }
609 |
610 | ol li::marker {
611 | color: var(--scheme-blue);
612 | }
613 |
614 | mark {
615 | background-color: var(--mark-color);
616 | border-radius: 3px;
617 | color: var(--text-fg);
618 | }
619 |
620 | #hidden {
621 | display: none;
622 | }
623 |
624 | /* ------------------------------------------------------- INPUT */
625 |
626 | input {
627 | background-color: var(--card-bg);
628 | border-width: 2px;
629 | border-style: solid;
630 | border-color: var(--card-border);
631 | border-radius: 7px;
632 | min-height: 25px;
633 | font-family: var(--font-family) !important;
634 | font-size: var(--font-size-regular) !important;
635 | color: var(--text-fg-faint);
636 | padding: 10px;
637 | }
638 |
639 | input::selection {
640 | background-color: rgb(var(--ctp-blue)) !important;
641 | color: var(--card-bg) !important;
642 | }
643 |
644 | /*
645 | ----------------------------------------------- REPLAY BUTTON
646 | */
647 |
648 | .replay-button svg circle {
649 | fill: var(--card-bg);
650 | stroke: var(--tag-bg);
651 | stroke-width: 4px;
652 | }
653 |
654 | .replay-button svg path {
655 | fill: var(--tag-bg);
656 | stroke: var(--tag-bg);
657 | }
658 |
659 | .morsecode {
660 | padding: 15px 20px;
661 | margin-left: 5px;
662 | margin-right: 5px;
663 | border-radius: 10px;
664 | background-color: rgba(220, 224, 232, 0.4);
665 | border: solid 2px var(--card-border);
666 | }
667 |
668 | .replay-button svg {
669 | padding: 20px;
670 | width: 0px;
671 | height: 0px;
672 | background-color: var(--text-fg);
673 | -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolygon points='10 8 16 12 10 16 10 8'%3E%3C/polygon%3E%3C/svg%3E");
674 | -webkit-mask-repeat: no-repeat;
675 | -webkit-mask-size: contain;
676 | }
677 |
678 | /*
679 | --------------------------------------------- CENTER TEXT DIV
680 | */
681 |
682 | .center-text {
683 | text-align: center;
684 | }
685 |
686 | .center-text ul,
687 | .center-text ol {
688 | padding-inline-start: 0;
689 | }
690 |
691 | .center-text ul li,
692 | .center-text ol li {
693 | width: fit-content;
694 | margin: 0 auto;
695 | }
696 |
697 | .shift-right {
698 | padding-left: 20px;
699 | }
700 |
701 | .shift-right :is(ul, ol) {
702 | padding-inline-start: 15px;
703 | }
704 |
705 | .shift-right :is(ul, ol):first-child {
706 | margin-block-start: 5px;
707 | }
708 |
709 | .shift-right .center-text {
710 | padding-left: 0;
711 | }
712 |
713 | .shift-right .center-text> :is(ul, ol) {
714 | padding-inline-start: 5px;
715 | }
716 |
717 | .shift-right .center-text> :is(ul, ol):first-child {
718 | margin-block-start: 5px;
719 | }
720 |
721 | .center-text .shift-right {
722 | padding-left: 0;
723 | }
724 |
725 | .center-text .shift-right> :is(ul, ol) {
726 | padding-inline-start: 5px;
727 | }
728 |
729 | .center-text .shift-right> :is(ul, ol):first-child {
730 | margin-block-start: 5px;
731 | }
732 |
733 | /*
734 | ----------------------------------------------- FEEDBACK FORM
735 | */
736 |
737 | .reportIconContainer {
738 | display: flex;
739 | justify-content: flex-end;
740 | margin-top: auto;
741 | margin-left: auto;
742 | margin-right: 0.2em;
743 | }
744 |
745 | /*
746 | ------------------------------------------------------- MOCHI */
747 |
748 | .prettify-flip {
749 | color: var(--text-fg-faint);
750 | font-size: var(--font-size-small);
751 | padding: 1em 0;
752 | background: rgba(255, 255, 255, 0.0196078431);
753 | border-top: 1px dashed var(--divider);
754 | display: var(--mochi-mobile-toggle, var(--mochi-toggle, none));
755 | }
756 |
757 | .prettify-hint {
758 | color: var(--text-fg-faint);
759 | opacity: 0.5;
760 | font-size: var(--font-size-small);
761 | font-family: var(--font-family);
762 | padding-top: 1em;
763 | display: var(--mochi-mobile-toggle, var(--mochi-toggle, none));
764 | }
765 |
766 | .prettify-flip svg {
767 | height: 20px;
768 | width: 20px;
769 | margin-bottom: calc(-13px + 0.5 * var(--font-size-small));
770 | }
771 |
772 | .prettify-hint svg {
773 | height: 20px;
774 | width: 20px;
775 | margin-bottom: calc(-13px + 0.5 * var(--font-size-small));
776 | }
777 |
778 | html:not(.mobile) .prettify-hint.touch {
779 | display: none;
780 | }
781 |
782 | html.mobile .prettify-hint.key {
783 | display: none;
784 | }
785 |
786 | /*
787 | ---------------------------------------------------- ROW DIV
788 | */
789 |
790 | .row {
791 | display: flex;
792 | flex-direction: row;
793 | justify-content: space-between;
794 | }
795 |
796 | /*
797 | ---------------------------------------------- UPDATE WARNING
798 | */
799 |
800 | .warning {
801 | display: none;
802 | border-radius: 16px;
803 | border: white dotted;
804 | max-width: 90%;
805 | padding: 10px;
806 | }
807 |
808 | .close {
809 | margin-left: 90%;
810 | }
811 |
812 | /*
813 | ---------------------------------------------------- BUTTONS */
814 |
815 | button,
816 | .isMac button {
817 | color: var(--tag-fg);
818 | border-radius: 0.2em;
819 | box-shadow: none;
820 | border: 1px solid var(--card-border);
821 | border-bottom-color: var(--card-border);
822 | font-size: var(--font-size-small);
823 | font-family: inherit;
824 | transition: all 0.25s;
825 | background: none;
826 | background-color: var(--tag-bg);
827 | }
828 |
829 | button:active,
830 | button:hover,
831 | .isMac button:active,
832 | .isMac button:hover {
833 | background: none;
834 | background-color: var(--tag-bg-active);
835 | color: var(--tag-fg-active);
836 | cursor: pointer;
837 | }
838 |
839 | /*
840 | -------------------------------------- ADJUSTMENTS FOR MOBILE
841 | */
842 |
843 | .mobile .card,
844 | .mobile #content {
845 | font-size: 120%;
846 | margin: 0;
847 | }
848 |
849 | /*
850 | ----------------------------------------------------- IMAGES */
851 |
852 | img.zoomable-image,
853 | .zoomable-image img {
854 | border-radius: 0.25em;
855 | display: block;
856 | margin: 1em auto;
857 | max-width: var(--img-width) !important;
858 | transition: max-width 0.25s 0.1s, opacity 0.25s 0.1s, filter 0.1s, transform 0s;
859 | }
860 |
861 | .nightMode img.zoomable-image,
862 | .night_mode .zoomable-image img {
863 | filter: var(--img-filter);
864 | opacity: var(--img-brightness);
865 | }
866 |
867 | img.zoomable-image:hover,
868 | .zoomable-image img:hover {
869 | cursor: zoom-in;
870 | filter: none;
871 | max-width: 100% !important;
872 | opacity: 1;
873 | }
874 |
875 | img.zoomable-image+br,
876 | .zoomable-image img+br {
877 | display: none;
878 | }
879 |
880 | html:not(.mobile) img.zoomable-image:active,
881 | html:not(.mobile) .zoomable-image img:active {
882 | border: 1px solid var(--link-fg-active);
883 | cursor: zoom-out;
884 | filter: none;
885 | left: 0;
886 | max-width: 95% !important;
887 | opacity: 1;
888 | position: fixed;
889 | top: 0;
890 | transform: translate(calc(50vw - 50%), calc(50vh - 50%));
891 | z-index: 100;
892 | }
893 |
894 | /* ------------------------------------------------ FONT STYLING
895 | */
896 |
897 | .lexend-deca {
898 | font-family: "Lexend", sans-serif;
899 | font-optical-sizing: auto;
900 | font-weight: 400;
901 | font-style: normal;
902 | }
903 |
904 | /*
905 | ----------------------------------------------- SELECT FONTS */
906 |
907 | :root {
908 | --font-family: "Lexend";
909 | }
910 |
911 | .mobile {
912 | --font-family: "Lexend";
913 | }
--------------------------------------------------------------------------------
/Sequence/Back.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Timeline Builder - Result & Retry
7 |
8 |
209 |
210 |
211 |
212 |
213 | {{Title}}
214 |
215 |
216 |
Sequence
217 |
219 |
220 |
221 |
222 |
223 |
224 | Check Answer
225 | Show Answer
226 |
227 |
228 |
229 |
Elements
230 |
232 |
233 |
234 |
235 |
236 |
237 |
Explanation:
238 |
239 |
240 |
241 |
633 |
634 |
635 |
636 |
--------------------------------------------------------------------------------
/SortWords/fornt.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Word Sort Game
8 |
9 |
10 |
11 |
12 |
13 |
14 | {{Words}}
15 |
16 | {{Title}}
17 |
18 |
19 |
20 |
21 |
Available Items (Drag these):
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 | Check Answers
32 | Show Answer
33 |
34 |
35 |
36 |
37 |
38 |
39 |
744 |
745 |
746 |
--------------------------------------------------------------------------------