This commit is contained in:
eric
2026-03-15 22:39:30 -05:00
parent aff82b4fc2
commit 39803739bb
6 changed files with 185 additions and 163 deletions

View File

@@ -85,8 +85,8 @@ export default function JoinPage() {
if (submitted) {
return (
<div className="flex min-h-screen items-center justify-center bg-[#f0f4f8] dark:bg-gray-950 px-4">
<div className="w-full max-w-md animate-fade-in rounded-2xl bg-white dark:bg-gray-900 p-10 text-center shadow-lg border border-gray-100 dark:border-gray-800">
<div className="flex min-h-screen items-center justify-center bg-[#faf8f5] dark:bg-stone-950 px-4">
<div className="w-full max-w-md animate-fade-in rounded-2xl bg-white dark:bg-stone-900 p-10 text-center shadow-lg border border-stone-200 dark:border-stone-800">
<div className="mx-auto mb-5 flex h-20 w-20 items-center justify-center rounded-full bg-emerald-50 dark:bg-emerald-900/30 text-5xl">
</div>
@@ -96,7 +96,7 @@ export default function JoinPage() {
</p>
<Link
href="/"
className="mt-8 inline-flex items-center gap-2 rounded-full bg-[#ff4d4f] px-8 py-3 font-semibold text-white transition-colors hover:bg-[#ff7a45]"
className="mt-8 inline-flex items-center gap-2 rounded-xl bg-amber-600 px-8 py-3 font-medium text-white transition-colors hover:bg-amber-700"
>
</Link>
@@ -106,13 +106,13 @@ export default function JoinPage() {
}
return (
<div className="min-h-screen bg-[#f0f4f8] dark:bg-gray-950">
<div className="min-h-screen bg-[#faf8f5] dark:bg-stone-950">
<div className="mx-auto max-w-2xl px-0 py-0 sm:px-6 sm:py-10 lg:py-14">
<div className="overflow-hidden bg-white dark:bg-gray-900 shadow-sm sm:rounded-t-2xl">
<div className="relative h-40 overflow-hidden bg-gradient-to-br from-sky-400 via-cyan-500 to-teal-400 sm:h-52">
<div className="overflow-hidden bg-white dark:bg-stone-900 shadow-sm sm:rounded-t-2xl">
<div className="relative h-40 overflow-hidden bg-gradient-to-br from-amber-500 via-amber-600 to-amber-700 sm:h-52">
<div className="absolute inset-0 flex flex-col items-center justify-center text-white">
<div className="text-6xl sm:text-7xl">📍</div>
<div className="mt-2 text-sm font-medium opacity-80">
<div className="text-6xl sm:text-7xl"></div>
<div className="mt-2 text-sm font-medium opacity-90">
</div>
</div>
@@ -122,14 +122,14 @@ export default function JoinPage() {
<h1 className="text-xl font-bold text-slate-800 dark:text-slate-100 sm:text-2xl">
</h1>
<p className="mt-3 whitespace-pre-line text-sm leading-relaxed text-slate-400 dark:text-slate-500 sm:text-base">
<p className="mt-3 whitespace-pre-line text-sm leading-relaxed text-slate-500 dark:text-slate-400 sm:text-base">
</p>
</div>
</div>
{selectedSession && (
<div className="mt-5 rounded-2xl bg-white dark:bg-gray-900 px-5 py-4 shadow-sm border border-gray-100 dark:border-gray-800">
<div className="mt-5 rounded-xl bg-white dark:bg-stone-900 px-5 py-4 shadow-sm border border-stone-200 dark:border-stone-800">
<p className="text-xs text-slate-500 dark:text-slate-500 mb-1"></p>
<p className="font-medium text-slate-800 dark:text-slate-100">{selectedSession.title}</p>
<p className="text-sm text-slate-500 dark:text-slate-500">{selectedSession.date} {selectedSession.time} · {selectedSession.place}</p>
@@ -138,7 +138,7 @@ export default function JoinPage() {
<form
onSubmit={handleSubmit}
className="mt-0 bg-white dark:bg-gray-900 px-5 pb-8 pt-2 shadow-sm sm:mt-5 sm:rounded-2xl sm:px-8 sm:py-8 sm:shadow-md border border-gray-100 dark:border-gray-800"
className="mt-0 bg-white dark:bg-stone-900 px-5 pb-8 pt-2 shadow-sm sm:mt-5 sm:rounded-xl sm:px-8 sm:py-8 sm:shadow-md border border-stone-200 dark:border-stone-800"
>
<div className="grid gap-0 sm:grid-cols-2 sm:gap-6">
<Field label="📍 城市">
@@ -251,7 +251,7 @@ export default function JoinPage() {
checked={form.agreeRules}
onChange={(e) => set("agreeRules", e.target.checked)}
required
className="mt-1 rounded border-gray-300 text-[#ff4d4f] focus:ring-[#ff4d4f]"
className="mt-1 rounded border-stone-300 text-amber-600 focus:ring-amber-500"
/>
<span className="text-sm text-slate-600 dark:text-slate-400">
@@ -268,7 +268,7 @@ export default function JoinPage() {
<button
type="submit"
disabled={submitting}
className="w-full rounded-full bg-[#ff4d4f] py-3.5 text-lg font-semibold text-white shadow-md transition-all hover:bg-[#ff3333] active:scale-[0.98] disabled:cursor-not-allowed disabled:opacity-70 sm:py-4"
className="w-full rounded-xl bg-amber-600 py-3.5 text-lg font-medium text-white transition-colors hover:bg-amber-700 active:scale-[0.98] disabled:cursor-not-allowed disabled:opacity-70 sm:py-4"
>
{submitting ? "提交中…" : "提交报名"}
</button>
@@ -276,7 +276,7 @@ export default function JoinPage() {
</form>
<div className="mt-6 text-center">
<Link href="/" className="text-sm text-slate-400 dark:text-slate-500 transition-colors hover:text-[#ff4d4f]">
<Link href="/" className="text-sm text-stone-400 dark:text-stone-500 transition-colors hover:text-amber-600">
</Link>
</div>