diff --git a/messages/en.json b/messages/en.json
index f620aa8..191b81f 100644
--- a/messages/en.json
+++ b/messages/en.json
@@ -324,6 +324,23 @@
"events_mod_team_desc": "Team members and shift scheduling",
"events_mod_sponsors": "Sponsors",
"events_mod_sponsors_desc": "Sponsors, partners, and deliverables",
+ "module_coming_soon": "Coming Soon",
+ "module_coming_soon_desc": "This module is under development and will be available soon.",
+ "team_title": "Event Team",
+ "team_subtitle": "Manage team members and their roles for this event.",
+ "team_add_member": "Add Member",
+ "team_role_lead": "Lead",
+ "team_role_manager": "Manager",
+ "team_role_member": "Member",
+ "team_empty": "No team members assigned yet. Add members from your organization.",
+ "team_remove_confirm": "Remove {name} from this event's team?",
+ "team_remove_btn": "Remove",
+ "team_added": "{name} added to team",
+ "team_removed": "{name} removed from team",
+ "team_updated": "Role updated",
+ "team_select_member": "Select a member",
+ "team_select_role": "Select role",
+ "team_already_assigned": "Already on team",
"overview_subtitle": "Welcome back. Here's what's happening.",
"overview_stat_events": "Events",
"overview_upcoming_events": "Upcoming Events",
diff --git a/messages/et.json b/messages/et.json
index f206b28..79f59f6 100644
--- a/messages/et.json
+++ b/messages/et.json
@@ -324,6 +324,23 @@
"events_mod_team_desc": "Meeskonnaliikmed ja vahetuste planeerimine",
"events_mod_sponsors": "Sponsorid",
"events_mod_sponsors_desc": "Sponsorid, partnerid ja kohustused",
+ "module_coming_soon": "Tulekul",
+ "module_coming_soon_desc": "See moodul on arendamisel ja saab peagi kättesaadavaks.",
+ "team_title": "Ürituse meeskond",
+ "team_subtitle": "Halda meeskonnaliikmeid ja nende rolle selle ürituse jaoks.",
+ "team_add_member": "Lisa liige",
+ "team_role_lead": "Juht",
+ "team_role_manager": "Haldur",
+ "team_role_member": "Liige",
+ "team_empty": "Meeskonnaliikmeid pole veel määratud. Lisa liikmeid oma organisatsioonist.",
+ "team_remove_confirm": "Eemalda {name} selle ürituse meeskonnast?",
+ "team_remove_btn": "Eemalda",
+ "team_added": "{name} lisatud meeskonda",
+ "team_removed": "{name} eemaldatud meeskonnast",
+ "team_updated": "Roll uuendatud",
+ "team_select_member": "Vali liige",
+ "team_select_role": "Vali roll",
+ "team_already_assigned": "Juba meeskonnas",
"overview_subtitle": "Tere tagasi. Siin on ülevaade toimuvast.",
"overview_stat_events": "Üritused",
"overview_upcoming_events": "Tulevased üritused",
diff --git a/src/routes/[orgSlug]/events/[eventSlug]/budget/+page.svelte b/src/routes/[orgSlug]/events/[eventSlug]/budget/+page.svelte
new file mode 100644
index 0000000..7d948ce
--- /dev/null
+++ b/src/routes/[orgSlug]/events/[eventSlug]/budget/+page.svelte
@@ -0,0 +1,32 @@
+
+
+
+ {m.events_mod_budget()} | {data.event.name} | {data.org.name}
+
+
+
+
account_balance_wallet
+
{m.events_mod_budget()}
+
+ {m.events_mod_budget_desc()}
+
+
{m.module_coming_soon()}
+
diff --git a/src/routes/[orgSlug]/events/[eventSlug]/files/+page.svelte b/src/routes/[orgSlug]/events/[eventSlug]/files/+page.svelte
new file mode 100644
index 0000000..88895a9
--- /dev/null
+++ b/src/routes/[orgSlug]/events/[eventSlug]/files/+page.svelte
@@ -0,0 +1,32 @@
+
+
+
+ {m.events_mod_files()} | {data.event.name} | {data.org.name}
+
+
+
+
folder
+
{m.events_mod_files()}
+
+ {m.events_mod_files_desc()}
+
+
{m.module_coming_soon()}
+
diff --git a/src/routes/[orgSlug]/events/[eventSlug]/guests/+page.svelte b/src/routes/[orgSlug]/events/[eventSlug]/guests/+page.svelte
new file mode 100644
index 0000000..e0c7002
--- /dev/null
+++ b/src/routes/[orgSlug]/events/[eventSlug]/guests/+page.svelte
@@ -0,0 +1,32 @@
+
+
+
+ {m.events_mod_guests()} | {data.event.name} | {data.org.name}
+
+
+
+
groups
+
{m.events_mod_guests()}
+
+ {m.events_mod_guests_desc()}
+
+
{m.module_coming_soon()}
+
diff --git a/src/routes/[orgSlug]/events/[eventSlug]/schedule/+page.svelte b/src/routes/[orgSlug]/events/[eventSlug]/schedule/+page.svelte
new file mode 100644
index 0000000..5f69922
--- /dev/null
+++ b/src/routes/[orgSlug]/events/[eventSlug]/schedule/+page.svelte
@@ -0,0 +1,32 @@
+
+
+
+ {m.events_mod_schedule()} | {data.event.name} | {data.org.name}
+
+
+
+
calendar_today
+
{m.events_mod_schedule()}
+
+ {m.events_mod_schedule_desc()}
+
+
{m.module_coming_soon()}
+
diff --git a/src/routes/[orgSlug]/events/[eventSlug]/sponsors/+page.svelte b/src/routes/[orgSlug]/events/[eventSlug]/sponsors/+page.svelte
new file mode 100644
index 0000000..ec6994e
--- /dev/null
+++ b/src/routes/[orgSlug]/events/[eventSlug]/sponsors/+page.svelte
@@ -0,0 +1,32 @@
+
+
+
+ {m.events_mod_sponsors()} | {data.event.name} | {data.org.name}
+
+
+
+
handshake
+
{m.events_mod_sponsors()}
+
+ {m.events_mod_sponsors_desc()}
+
+
{m.module_coming_soon()}
+
diff --git a/src/routes/[orgSlug]/events/[eventSlug]/tasks/+page.svelte b/src/routes/[orgSlug]/events/[eventSlug]/tasks/+page.svelte
new file mode 100644
index 0000000..d1509e6
--- /dev/null
+++ b/src/routes/[orgSlug]/events/[eventSlug]/tasks/+page.svelte
@@ -0,0 +1,32 @@
+
+
+
+ {m.events_mod_tasks()} | {data.event.name} | {data.org.name}
+
+
+
+
task_alt
+
{m.events_mod_tasks()}
+
+ {m.events_mod_tasks_desc()}
+
+
{m.module_coming_soon()}
+
diff --git a/src/routes/[orgSlug]/events/[eventSlug]/team/+page.svelte b/src/routes/[orgSlug]/events/[eventSlug]/team/+page.svelte
new file mode 100644
index 0000000..ce37cfb
--- /dev/null
+++ b/src/routes/[orgSlug]/events/[eventSlug]/team/+page.svelte
@@ -0,0 +1,490 @@
+
+
+
+ {m.events_mod_team()} | {data.event.name} | {data.org.name}
+
+
+
+
+
+
+
+
{m.team_title()}
+
{m.team_subtitle()}
+
+ {#if isEditor}
+
+ {/if}
+
+
+
+ {#if teamMembers.length === 0}
+
+
badge
+
+ {m.team_empty()}
+
+ {#if isEditor && availableMembers.length > 0}
+
+
+
+ {/if}
+
+ {:else}
+
+
+ {#each teamMembers as member}
+
+
+
+
+
+ {member.profile?.full_name ||
+ member.profile?.email ||
+ "Unknown"}
+
+
+ {member.profile?.email || ""}
+
+
+
+
+ {member.role}
+ {#if isEditor}
+
+
+ {/if}
+
+
+ {/each}
+
+
+ {/if}
+
+
+
+
+ (showAddModal = false)}
+ title={m.team_add_member()}
+>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ (editingMember = null)}
+ title="Change Role"
+>
+ {#if editingMember}
+
+
+
+
+
+ {editingMember.profile?.full_name ||
+ editingMember.profile?.email ||
+ "Unknown"}
+
+
+ {editingMember.role}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {/if}
+
+
+
+{#if memberToRemove}
+
+
+ e.key === "Escape" && (memberToRemove = null)}
+ onclick={(e) => e.target === e.currentTarget && (memberToRemove = null)}
+ role="dialog"
+ aria-modal="true"
+ aria-label={m.team_remove_btn()}
+ >
+
+
+ {m.team_remove_btn()}
+
+
+ {m.team_remove_confirm({ name: getMemberName(memberToRemove) })}
+
+
+
+
+
+
+
+{/if}