.login-viewport.svelte-1x05zx6{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:2rem}.ambient-bg.svelte-1x05zx6{position:fixed;inset:0;z-index:0;background:radial-gradient(900px circle at 30% 20%,rgba(122,40,203,.18),transparent 55%),radial-gradient(1100px circle at 70% 80%,rgba(24,160,251,.14),transparent 55%),radial-gradient(600px circle at 50% 50%,rgba(122,40,203,.06),transparent 70%);animation:svelte-1x05zx6-ambient-drift 20s ease-in-out infinite alternate}@keyframes svelte-1x05zx6-ambient-drift{0%{filter:hue-rotate(0deg);opacity:1}to{filter:hue-rotate(8deg);opacity:.85}}.login-card.svelte-1x05zx6{position:relative;z-index:10;width:100%;max-width:420px;background:var(--spatial-overlay);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:2.5rem 2.5rem 2rem;box-shadow:inset 0 1px #ffffff14,0 16px 64px #00000059,0 2px 16px #0003;animation:svelte-1x05zx6-card-appear .8s cubic-bezier(.16,1,.3,1) both}@keyframes svelte-1x05zx6-card-appear{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.accent-line.svelte-1x05zx6{position:absolute;top:0;left:2rem;right:2rem;height:3px;background:var(--brand-gradient);border-radius:0 0 3px 3px}.card-header.svelte-1x05zx6{text-align:center;margin-bottom:2rem}.card-title.svelte-1x05zx6{font-family:var(--font-heading);font-size:1.6rem;font-weight:700;letter-spacing:-.02em;margin:0 0 .5rem;background:var(--brand-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.card-subtitle.svelte-1x05zx6{font-family:var(--font-body);font-size:.85rem;color:var(--text-muted);margin:0}.error-banner.svelte-1x05zx6{display:flex;align-items:center;gap:.6rem;padding:.75rem 1rem;margin-bottom:1.5rem;background:#ef44441a;border:1px solid rgba(239,68,68,.25);border-radius:8px;color:#f87171;font-size:.82rem;font-family:var(--font-body);animation:svelte-1x05zx6-error-fade .4s ease both}@keyframes svelte-1x05zx6-error-fade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.field-group.svelte-1x05zx6{margin-bottom:1.25rem}.field-label.svelte-1x05zx6{display:block;font-family:var(--font-heading);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.5rem}input[type=email].svelte-1x05zx6,input[type=password].svelte-1x05zx6{width:100%;padding:.8rem 1rem;font-size:.9rem;font-family:var(--font-body);background:#ffffff0a;border:1px solid var(--border);border-radius:8px;color:var(--text-main);outline:none;transition:border-color .3s ease,background .3s ease,box-shadow .3s ease}input[type=email].svelte-1x05zx6::placeholder,input[type=password].svelte-1x05zx6::placeholder{color:var(--text-muted);opacity:.5}input[type=email].svelte-1x05zx6:focus,input[type=password].svelte-1x05zx6:focus{border-color:var(--client-brand-end);background:#ffffff0f;box-shadow:0 0 0 3px #18a0fb1f}input.svelte-1x05zx6:disabled{opacity:.5;cursor:not-allowed}.submit-btn.svelte-1x05zx6{width:100%;padding:.85rem;margin-top:.75rem;font-family:var(--font-heading);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#fff;background:var(--brand-gradient);border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:box-shadow .3s ease,transform .15s cubic-bezier(.16,1,.3,1),opacity .3s ease;box-shadow:0 4px 20px #18a0fb40}.submit-btn.svelte-1x05zx6:hover:not(:disabled){box-shadow:0 6px 28px #18a0fb66;transform:translateY(-1px)}.submit-btn.svelte-1x05zx6:active:not(:disabled){transform:translateY(0) scale(.98)}.submit-btn.svelte-1x05zx6:disabled{opacity:.7;cursor:not-allowed}.spinner.svelte-1x05zx6{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:svelte-1x05zx6-spin .65s linear infinite}@keyframes svelte-1x05zx6-spin{to{transform:rotate(360deg)}}.card-footer.svelte-1x05zx6{margin-top:2rem;text-align:center}.copyright.svelte-1x05zx6{font-size:.58rem;color:var(--text-muted);opacity:.4;text-transform:uppercase;letter-spacing:.1em;font-family:var(--font-heading)}@media(max-width:480px){.login-card.svelte-1x05zx6{padding:2rem 1.5rem 1.5rem}.accent-line.svelte-1x05zx6{left:1.5rem;right:1.5rem}.card-title.svelte-1x05zx6{font-size:1.35rem}}
