59 lines
3.3 KiB
PHP
59 lines
3.3 KiB
PHP
<div class="flex min-h-screen bg-bg">
|
|
{{-- Brand panel (enterprise, hidden on small screens) --}}
|
|
<aside class="relative hidden w-[44%] overflow-hidden bg-gradient-to-br from-accent via-accent-active to-accent-press lg:flex lg:flex-col lg:justify-between lg:p-12 xl:p-16">
|
|
<div aria-hidden="true" class="pointer-events-none absolute inset-0 opacity-[0.15]"
|
|
style="background-image: radial-gradient(circle at 1px 1px, #fff 1px, transparent 0); background-size: 28px 28px;"></div>
|
|
<div aria-hidden="true" class="pointer-events-none absolute -right-24 -top-24 size-96 rounded-full bg-white/10 blur-3xl"></div>
|
|
|
|
<div class="relative flex items-center gap-2.5">
|
|
<x-ui.logo class="size-9" />
|
|
<span class="font-mono text-xl font-semibold tracking-tight text-white">CluPilot</span>
|
|
</div>
|
|
|
|
<div class="relative">
|
|
<h2 class="max-w-md text-4xl font-semibold leading-tight tracking-tight text-white xl:text-5xl">{{ __('auth.brand_headline') }}</h2>
|
|
<p class="mt-4 max-w-sm text-lg text-white/80">{{ __('auth.brand_sub') }}</p>
|
|
<ul class="mt-10 space-y-3.5">
|
|
@foreach (['brand_point_1', 'brand_point_2', 'brand_point_3'] as $point)
|
|
<li class="flex items-center gap-3 text-white/90">
|
|
<span class="grid size-6 shrink-0 place-items-center rounded-pill bg-white/15"><x-ui.icon name="check" class="size-3.5 text-white" /></span>
|
|
<span>{{ __('auth.'.$point) }}</span>
|
|
</li>
|
|
@endforeach
|
|
</ul>
|
|
</div>
|
|
|
|
<p class="relative text-sm text-white/60">{{ __('auth.brand_footer') }}</p>
|
|
</aside>
|
|
|
|
{{-- Form panel --}}
|
|
<main class="flex flex-1 items-center justify-center px-6 py-12">
|
|
<div class="w-full max-w-sm animate-rise">
|
|
<div class="mb-8 flex items-center gap-2.5 lg:hidden">
|
|
<x-ui.logo class="size-8" />
|
|
<span class="font-mono text-lg font-semibold tracking-tight text-ink">CluPilot</span>
|
|
</div>
|
|
|
|
<h1 class="text-2xl font-semibold tracking-tight text-ink">{{ __('auth.login_title') }}</h1>
|
|
<p class="mt-1.5 text-sm text-muted">{{ __('auth.login_subtitle') }}</p>
|
|
|
|
@if (session('status'))
|
|
<x-ui.alert variant="info" class="mt-5">{{ session('status') }}</x-ui.alert>
|
|
@endif
|
|
|
|
<form method="POST" action="{{ route('login.store') }}" class="mt-7 space-y-5">
|
|
@csrf
|
|
<x-ui.input name="email" type="email" :label="__('auth.email')" autocomplete="email" autofocus required value="{{ old('email') }}" />
|
|
<x-ui.input name="password" type="password" :label="__('auth.password_label')" autocomplete="current-password" required />
|
|
<x-ui.checkbox name="remember" :label="__('auth.remember')" value="1" />
|
|
<x-ui.button type="submit" variant="primary" size="md" class="w-full">{{ __('auth.sign_in') }}</x-ui.button>
|
|
</form>
|
|
|
|
<p class="mt-8 text-center text-sm text-muted">
|
|
{{ __('auth.no_account') }}
|
|
<a href="{{ route('register') }}" wire:navigate class="font-semibold text-accent-text hover:underline">{{ __('auth.sign_up') }}</a>
|
|
</p>
|
|
</div>
|
|
</main>
|
|
</div>
|