feat: finished creating login page

Fixed Color Picker
This commit is contained in:
Maximilian Liebmann 2025-05-22 22:59:01 +02:00
parent 6350208c4d
commit 772c8f84e8
5 changed files with 16 additions and 51 deletions

View file

@ -6,9 +6,6 @@
:root {
/* Custom values */
--font-heading: 'Comfortaa', sans-serif;
--font-label: 'Varela Round', sans-serif;
--transparent: transparent;
--neutral-000: oklch(0 0 0);
@ -28,17 +25,14 @@
--base: var(--neutral-800);
--text: var(--neutral-000);
--text-alt: var(--neutral-900);
--text-input: var(--text);
--text-muted-input: var(--neutral-600);
--muted-input: var(--neutral-600);
--background-disabled: var(--neutral-500);
--text-disabled: var(--neutral-700);
--radius: 0.688rem;
--primary: oklch(0.7493 0.1551 74.95);
--hover-primary: oklch(0.7493 0.1551 74.95 / 0.8);
--active-primary: oklch(0.6191 0.1218 77.58);
--disabled-primary: oklch(0.7493 0.1551 74.95 / 0.5);
--hover-primary: oklch(0.6568 0.1358 74.86 / 0.8);
--active-primary: oklch(0.5911 0.1135 78.29);
--disabled-primary: oklch(0.6568 0.1358 74.86 / 0.5);
--secondary: oklch(0.4937 0.1697 271.26);
--hover-secondary: oklch(0.4937 0.1697 271.26 / 0.8);
@ -51,6 +45,8 @@
--foreground: oklch(0.13 0.028 261.692);
--card: oklch(1 0 0);
--card-foreground: oklch(0.13 0.028 261.692);
--popover: oklch(1 0 0);
@ -59,8 +55,6 @@
--primary-foreground: oklch(0.985 0.002 247.839);
--popover-hover: var(--neutral-750);
--secondary-foreground: oklch(0.21 0.034 264.665);
--muted: oklch(0.967 0.003 264.542);
@ -106,25 +100,7 @@
--sidebar-ring: oklch(0.707 0.022 261.325);
}
@font-face {
font-family: 'Comfortaa';
font-style: normal;
font-weight: 300 700;
src: url('/Fonts/Comfortaa/Comfortaa-VariableFont_weight.ttf')
format('truetype');
}
@font-face {
font-family: 'Varela Round';
font-style: normal;
font-weight: 400;
src: url('/Fonts/VarelaRound/VarelaRound-Regular.ttf') format('truetype');
}
@theme inline {
--font-heading: var(--font-heading);
--font-label: var(--font-label);
--transparent: var(--transparent);
--color-neutral-000: var(--neutral-000);
@ -144,10 +120,6 @@
--color-base: var(--neutral-800);
--color-text: var(--text);
--color-text-alt: var(--text-alt);
--color-text-input: var(--text-input);
--color-text-muted-input: var(--text-muted-input);
--color-muted-input: var(--muted-input);
--color-background-disabled: var(--neutral-500);
--color-text-disabled: var(--neutral-700);
--radius: 0.688rem;
@ -160,7 +132,7 @@
--color-secondary: var(--secondary);
--color-hover-secondary: var(--hover-secondary);
--color-active-secondary: var(--active-secondary);
--color-disabled-secondary: var(--disabled-secondary);
--disabled-secondary: var(--disabled-secondary);
/* Custom values */
@ -180,12 +152,10 @@
--color-card-foreground: var(--card-foreground);
--color-popover: var(--color-background);
--color-popover: var(--popover);
--color-popover-foreground: var(--popover-foreground);
--color-popover-hover: var(--popover-hover);
--color-primary: var(--primary);
--color-primary-foreground: var(--primary-foreground);
@ -198,7 +168,7 @@
--color-muted-foreground: var(--muted-foreground);
--color-accent: var(--color-neutral-750);
--color-accent: var(--accent);
--color-accent-foreground: var(--accent-foreground);
@ -243,13 +213,13 @@
--transparent: transparent;
--neutral-000: oklch(1 0 0);
--neutral-100: oklch(0.9702 0 0);
--neutral-150: oklch(0.9128 0 0);
--neutral-100: oklch(0.9128 0 0);
--neutral-150: oklch(0.9702 0 0);
--neutral-200: oklch(0.8266 0 0);
--neutral-300: oklch(0.738 0 0);
--neutral-400: oklch(0.6434 0 0);
--neutral-500: oklch(0.5486 0 0);
--neutral-600: oklch(0.4495 0 0);
--neutral-500: oklch(0.5486 0 0);
--neutral-700: oklch(0.3407 0 0);
--neutral-750: oklch(0.2972 0 0);
--neutral-800: oklch(0.2264 0 0);
@ -259,9 +229,6 @@
--base: var(--neutral-750);
--text: var(--neutral-000);
--text-alt: var(--neutral-900);
--text-input: var(--text);
--text-muted-input: var(--neutral-600);
--muted-input: var(--neutral-500);
--background-disabled: var(--neutral-500);
--text-disabled: var(--neutral-700);
@ -289,8 +256,6 @@
--primary-foreground: oklch(0.21 0.034 264.665);
--popover-hover: var(--neutral-700);
--secondary-foreground: oklch(0.985 0.002 247.839);
--muted: oklch(0.278 0.033 256.848);

View file

@ -42,7 +42,7 @@ function DropdownMenuContent({
data-slot='dropdown-menu-content'
sideOffset={sideOffset}
className={cn(
'bg-popover text-text data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md',
'bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md',
className,
)}
{...props}
@ -74,7 +74,7 @@ function DropdownMenuItem({
data-inset={inset}
data-variant={variant}
className={cn(
"focus:bg-popover-hover focus:text-text data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
"focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
className,
)}
{...props}

View file

@ -8,7 +8,7 @@ function Input({ className, type, ...props }: React.ComponentProps<'input'>) {
type={type}
data-slot='input'
className={cn(
'file:text-destructive placeholder:text-text-muted-input selection:bg-muted-input selection:text-text dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-text-input shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-label disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm',
'file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm',
'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]',
'aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive',
className,

View file

@ -13,7 +13,7 @@ function Label({
<LabelPrimitive.Root
data-slot='label'
className={cn(
'flex items-center gap-2 text-sm leading-none font-label select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50',
'flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50',
className,
)}
{...props}

View file

@ -107,7 +107,7 @@ function SelectItem({
<SelectPrimitive.Item
data-slot='select-item'
className={cn(
"focus:bg-accent focus:text-text [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",
"focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",
className,
)}
{...props}