.page.svelte-iv8lg3{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:var(--space-md);background-color:var(--color-bg-auth)}.card.svelte-iv8lg3{background:var(--color-bg);border-radius:var(--radius-lg);padding:var(--space-lg);width:100%;max-width:420px}.brand.svelte-iv8lg3{margin-bottom:var(--space-md);display:flex;justify-content:center}.logo.svelte-iv8lg3{height:48px;width:auto}h2.svelte-iv8lg3{font-size:1.5rem;margin-bottom:.25rem}.subtitle.svelte-iv8lg3{color:var(--color-text-secondary);margin-bottom:var(--space-md);font-size:.95rem}.error-banner.svelte-iv8lg3{background:var(--color-bg-error);color:var(--color-text-error);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-sm);margin-bottom:var(--space-sm);font-size:.9rem}.field.svelte-iv8lg3{display:flex;flex-direction:column;gap:.375rem;margin-bottom:var(--space-sm)}label.svelte-iv8lg3{font-weight:500;font-size:.95rem;display:flex;justify-content:space-between;align-items:baseline}.forgot.svelte-iv8lg3{font-size:.85rem;font-weight:400;color:var(--color-accent);text-decoration:none}.forgot.svelte-iv8lg3:hover{text-decoration:underline}input.svelte-iv8lg3{font-family:var(--font-body);font-size:1rem;padding:.625rem .875rem;border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-primary);transition:border-color .15s;width:100%}input.svelte-iv8lg3:focus{outline:none;border-color:var(--color-accent)}input.svelte-iv8lg3::placeholder{color:var(--color-placeholder)}.btn-primary.svelte-iv8lg3{width:100%;padding:.75rem;background:var(--color-accent);color:var(--color-text-on-accent);border:none;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:1rem;font-weight:600;cursor:pointer;margin-top:var(--space-xs);transition:background .15s}.btn-primary.svelte-iv8lg3:hover{background:var(--color-accent-hover)}.register-prompt.svelte-iv8lg3{text-align:center;margin-top:var(--space-md);font-size:.9rem;color:var(--color-text-secondary)}.register-prompt.svelte-iv8lg3 a:where(.svelte-iv8lg3){color:var(--color-accent);text-decoration:none;font-weight:500}.register-prompt.svelte-iv8lg3 a:where(.svelte-iv8lg3):hover{text-decoration:underline}
