vereinshaus/app/src/routes/(auth)/+layout.svelte

50 lines
924 B
Svelte

<script lang="ts">
import { goto } from '$app/navigation';
import { onMount } from 'svelte';
import { get } from 'svelte/store';
import { user } from '$lib/user';
let { children } = $props();
onMount(() => {
if (!!get(user)) {
goto('/');
}
});
</script>
<div class="auth-wrap">
<div class="auth-card">
<a href="/" class="logo">vereins.haus</a>
{@render children()}
</div>
</div>
<style>
.auth-wrap {
min-height: 100dvh;
display: flex;
align-items: center;
justify-content: center;
padding: 1.5rem;
background: var(--c-bg-subtle);
}
.auth-card {
width: 100%;
max-width: 400px;
background: var(--c-bg-card);
border-radius: 12px;
padding: 2rem;
box-shadow: 0 1px 3px rgba(0,0,0,.08), 0 4px 16px rgba(0,0,0,.06);
}
.logo {
display: block;
font-size: 1.4rem;
font-weight: 700;
color: var(--c-primary);
margin-bottom: 1.5rem;
letter-spacing: -0.02em;
}
</style>