diff --git a/SVSim.Database/Models/Config/ArenaTwoPickConfig.cs b/SVSim.Database/Models/Config/ArenaTwoPickConfig.cs
new file mode 100644
index 0000000..6886e94
--- /dev/null
+++ b/SVSim.Database/Models/Config/ArenaTwoPickConfig.cs
@@ -0,0 +1,30 @@
+namespace SVSim.Database.Models.Config;
+
+///
+/// Take Two run mechanics: rarity weights, class/neutral mix, per-battle XP, season ids,
+/// allowed-class allow-list. The pool's set scoping lives on ;
+/// this section is purely mechanics + the reward-schedule/challenge ids stamped on each run.
+///
+[ConfigSection("ArenaTwoPick")]
+public class ArenaTwoPickConfig
+{
+ public int RewardScheduleId { get; set; } = 1;
+ public int ChallengeId { get; set; } = 1;
+ public int MaxLosses { get; set; } = 2;
+ public int ClassXpPerBattle { get; set; } = 100;
+ public int SpotPointsPerBattle { get; set; } = 10;
+
+ public double LegendaryRate { get; set; } = 0.06;
+ public double GoldRate { get; set; } = 0.17;
+ public double SilverRate { get; set; } = 0.33;
+ public double BronzeRate { get; set; } = 0.44;
+
+ public double NeutralMixRate { get; set; } = 0.25;
+
+ public List AllowedClassIds { get; set; } = new();
+
+ public static ArenaTwoPickConfig ShippedDefaults() => new()
+ {
+ AllowedClassIds = new List { 1, 2, 3, 4, 5, 6, 7, 8 },
+ };
+}