:root{--background:oklch(0.985 0 0);--foreground:oklch(0.205 0 0);--card:oklch(1 0 0);
--primary:oklch(0.205 0 0);--primary-foreground:oklch(0.985 0 0);--muted-foreground:oklch(0.48 0 0);
--border:oklch(0.91 0 0);--ring:oklch(0.7 0 0);--radius:0.625rem}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:grid;place-items:center;padding:1rem;background:var(--background);
color:var(--foreground);font-family:Inter,"Segoe UI","Malgun Gothic",sans-serif;line-height:1.5}
main{width:100%;max-width:24rem;background:var(--card);border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);
padding:2rem;box-shadow:0 1px 2px rgb(0 0 0 / 0.04)}
.brand{margin:0 0 1.5rem;font-size:0.8125rem;font-weight:600;letter-spacing:0.02em;color:var(--muted-foreground)}
h1{margin:0 0 0.5rem;font-size:1.375rem;font-weight:600;letter-spacing:-0.01em}
p{margin:0 0 1rem;color:var(--muted-foreground);font-size:0.9375rem}
label{display:block;margin:1.25rem 0 0.375rem;font-size:0.875rem;font-weight:500}
input{width:100%;height:2.5rem;padding:0 0.75rem;border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);
background:var(--card);color:inherit;font:inherit}
input:focus{outline:2px solid var(--ring);outline-offset:1px}
button{width:100%;height:2.5rem;margin-top:1rem;border:0;border-radius:calc(var(--radius) - 2px);background:var(--primary);
color:var(--primary-foreground);font:inherit;font-weight:500;cursor:pointer}
button:hover{opacity:0.9}
a{color:var(--foreground)}
.note{margin-top:1.25rem;font-size:0.8125rem}