diff --git a/ts/deckoptions/AdvancedOptions.svelte b/ts/deckoptions/AdvancedOptions.svelte
index 0f33290bf..861dfa6c4 100644
--- a/ts/deckoptions/AdvancedOptions.svelte
+++ b/ts/deckoptions/AdvancedOptions.svelte
@@ -4,14 +4,9 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
-->
-
-
- {tr.schedulingMaximumInterval()}
-
-
-
-
-
-
-
+
+ {tr.schedulingMaximumInterval()}
+
-
-
- {tr.schedulingStartingEase()}
-
-
-
-
-
-
-
+
+ {tr.schedulingStartingEase()}
+
-
-
- {tr.schedulingEasyBonus()}
-
-
-
-
-
-
-
+
+ {tr.schedulingEasyBonus()}
+
-
-
- {tr.schedulingIntervalModifier()}
-
-
-
-
-
-
-
+
+ {tr.schedulingIntervalModifier()}
+
-
-
- {tr.schedulingHardInterval()}
-
-
-
-
-
-
-
+
+ {tr.schedulingHardInterval()}
+
-
-
- {tr.schedulingNewInterval()}
-
-
-
-
-
-
-
+
+ {tr.schedulingNewInterval()}
+
diff --git a/ts/deckoptions/AudioOptions.svelte b/ts/deckoptions/AudioOptions.svelte
index 152600033..50ff2e4f2 100644
--- a/ts/deckoptions/AudioOptions.svelte
+++ b/ts/deckoptions/AudioOptions.svelte
@@ -4,13 +4,8 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
-->
-
-
-
- {tr.deckConfigDisableAutoplay()}
-
-
-
-
-
-
+
+ {tr.deckConfigDisableAutoplay()}
+
-
-
-
- {tr.schedulingAlwaysIncludeQuestionSideWhenReplaying()}
-
-
-
-
-
-
-
+
+ {tr.schedulingAlwaysIncludeQuestionSideWhenReplaying()}
+
diff --git a/ts/deckoptions/CheckBoxRow.svelte b/ts/deckoptions/CheckBoxRow.svelte
new file mode 100644
index 000000000..3db4cf7cc
--- /dev/null
+++ b/ts/deckoptions/CheckBoxRow.svelte
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+ {#if markdownTooltip}{/if}
+
+
+
+
+
diff --git a/ts/deckoptions/DisplayOrder.svelte b/ts/deckoptions/DisplayOrder.svelte
index f59a2f95f..9f80c9ae3 100644
--- a/ts/deckoptions/DisplayOrder.svelte
+++ b/ts/deckoptions/DisplayOrder.svelte
@@ -4,13 +4,8 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
-->
-
-
- {tr.deckConfigNewGatherPriority()}
-
-
-
-
-
-
-
+
+ {tr.deckConfigNewGatherPriority()}
+
-
-
- {tr.deckConfigNewCardSortOrder()}
-
-
-
-
-
-
-
+
+ {tr.deckConfigNewCardSortOrder()}
+
-
-
- {tr.deckConfigNewReviewPriority()}
-
-
-
-
-
-
-
+
+ {tr.deckConfigNewReviewPriority()}
+
-
-
- {tr.deckConfigInterdayStepPriority()}
-
-
-
-
-
-
-
+
+ {tr.deckConfigInterdayStepPriority()}
+
-
-
- {tr.deckConfigReviewSortOrder()}
-
-
-
-
-
-
-
+
+ {tr.deckConfigReviewSortOrder()}
+
>
diff --git a/ts/deckoptions/SpinBoxFloatRow.svelte b/ts/deckoptions/SpinBoxFloatRow.svelte
new file mode 100644
index 000000000..7fcd046e0
--- /dev/null
+++ b/ts/deckoptions/SpinBoxFloatRow.svelte
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/ts/deckoptions/SpinBoxRow.svelte b/ts/deckoptions/SpinBoxRow.svelte
index c1650a832..eeb2d4d86 100644
--- a/ts/deckoptions/SpinBoxRow.svelte
+++ b/ts/deckoptions/SpinBoxRow.svelte
@@ -13,6 +13,7 @@
export let value: any;
export let defaultValue: any;
export let min = 0;
+ export let max: number | undefined = undefined;
export let markdownTooltip: string;
@@ -21,7 +22,7 @@
-
+
diff --git a/ts/deckoptions/TimerOptions.svelte b/ts/deckoptions/TimerOptions.svelte
index 51a9825a5..2d9a9798b 100644
--- a/ts/deckoptions/TimerOptions.svelte
+++ b/ts/deckoptions/TimerOptions.svelte
@@ -4,14 +4,9 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
-->
-
-
- {tr.deckConfigMaximumAnswerSecs()}
-
-
-
-
-
-
-
+
+ {tr.deckConfigMaximumAnswerSecs()}
+
-
-
-
- {tr.schedulingShowAnswerTimer()}
-
-
-
-
-
-
-
+
+ {tr.schedulingShowAnswerTimer()}
+