:root{--background:#fff;--foreground:#09090b;--card:#fff;--card-foreground:#09090b;--border:#e4e4e7;--input:#e4e4e7;--primary:#18181b;--primary-foreground:#fafafa;--muted:#f4f4f5;--muted-foreground:#71717a;--ring:#18181b;--radius:.5rem;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--danger-bg:#fef2f2;--danger-border:#fca5a5;--danger-color:#ef4444;--bg-space:#030306}@media (prefers-color-scheme:dark){:root{--background:#09090b;--foreground:#fafafa;--card:#09090b;--card-foreground:#fafafa;--border:#27272a;--input:#27272a;--primary:#fafafa;--primary-foreground:#18181b;--muted:#27272a;--muted-foreground:#a1a1aa;--ring:#d4d4d8;--danger-bg:#ef44441a;--danger-border:#7f1d1d;--danger-color:#f87171}}*,:before,:after{box-sizing:border-box}.login-page-container{justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}@media (min-width:768px){.login-page-container{padding:24px}}#starfieldCanvas{z-index:0;pointer-events:none;width:100vw;height:100vh;display:block;position:fixed;top:0;left:0}.auth-wrapper{z-index:10;flex-direction:column;width:100%;max-width:400px;margin:auto;display:flex;position:relative}.auth-card{background:var(--card);width:100%;color:var(--card-foreground);border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);border-bottom-width:6px;flex-direction:column;padding:0;transition:transform .3s,box-shadow .3s,border-color .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px -10px #0003}.auth-card:hover{transform:translateY(-2px);box-shadow:0 15px 35px -10px #0000004d}.auth-card:focus-within{border-color:#fff3;box-shadow:0 15px 40px -5px #ffffff0d}@media (prefers-color-scheme:dark){.auth-card{border-bottom-width:4px;box-shadow:0 10px 30px -10px #00000080}.auth-card:hover{box-shadow:0 15px 35px -10px #000000b3}}.auth-header{text-align:center;flex-direction:column;align-items:center;padding:32px 24px 16px;display:flex}.auth-header h1{letter-spacing:-.025em;margin:0;font-size:28px;font-weight:700}form{flex-direction:column;gap:20px;padding:0 24px 32px;display:flex}.form-group-floating{flex-direction:column;display:flex;position:relative}.form-input-floating{border-radius:var(--radius);border:1px solid var(--input);width:100%;height:52px;color:var(--foreground);background-color:#0000;outline:none;padding:24px 12px 8px;font-size:15px;transition:border-color .2s,box-shadow .2s;display:flex}.form-input-floating.has-error{border-color:var(--danger-color)}.form-input-floating:focus{border-color:var(--ring);box-shadow:0 0 0 1px var(--ring)}.form-input-floating.has-error:focus{box-shadow:0 0 0 1px var(--danger-color)}.floating-label{color:var(--muted-foreground);pointer-events:none;transform-origin:0 0;font-size:15px;transition:all .2s cubic-bezier(.16,1,.3,1);position:absolute;top:16px;left:12px}.form-input-floating:focus~.floating-label,.form-input-floating:not(:placeholder-shown)~.floating-label{color:var(--foreground);transform:translateY(-8px)scale(.75)}.form-input-floating.has-error~.floating-label{color:var(--danger-color)}.toggle-password{color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:color .15s;display:flex;position:absolute;top:14px;right:12px}.toggle-password:hover{color:var(--foreground)}.toggle-password svg{width:18px;height:18px}.inline-error{color:var(--danger-color);margin-top:6px;margin-left:2px;font-size:12px;font-weight:500;animation:.2s cubic-bezier(.16,1,.3,1) slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.auth-error-banner{background:var(--danger-bg);border-radius:var(--radius);color:var(--danger-color);align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:500;animation:.2s cubic-bezier(.16,1,.3,1) slideDown;display:flex}.auth-error-banner svg{flex-shrink:0;width:16px;height:16px}.btn-submit{border-radius:var(--radius);background-color:var(--primary);width:100%;height:44px;color:var(--primary-foreground);cursor:pointer;border:none;justify-content:center;align-items:center;margin-top:8px;font-size:15px;font-weight:600;transition:all .2s;display:inline-flex;position:relative;overflow:hidden}.btn-submit:hover:not(:disabled){opacity:.9;transform:translateY(-1px);box-shadow:0 4px 12px #ffffff1a}.btn-submit:disabled{opacity:.7;cursor:not-allowed;transform:none}.btn-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;margin:auto;animation:.8s linear infinite spin;display:none;position:absolute;inset:0}.btn-submit.is-loading .btn-text{opacity:0}.btn-submit.is-loading .btn-spinner{display:block}@keyframes spin{to{transform:rotate(360deg)}}.loading-mode{pointer-events:none;opacity:.8;transition:opacity .3s}.login-content{transition:opacity .4s,filter .4s}.login-content.hidden{opacity:0;filter:blur(4px);pointer-events:none}.success-overlay{background:var(--card);opacity:0;pointer-events:none;z-index:20;flex-direction:column;justify-content:center;align-items:center;transition:opacity .5s,transform .5s;display:flex;position:absolute;inset:0;transform:scale(1.05)}.success-overlay.visible{opacity:1;pointer-events:auto;transform:scale(1)}.success-icon{color:#10b981;opacity:0;width:48px;height:48px;margin-bottom:16px;transition:all .5s cubic-bezier(.16,1,.3,1) .2s;transform:translateY(10px)}.success-overlay.visible .success-icon{opacity:1;transform:translateY(0)}.success-text{color:var(--foreground);opacity:0;margin:0 0 8px;font-size:20px;font-weight:700;transition:all .5s cubic-bezier(.16,1,.3,1) .3s;transform:translateY(10px)}.success-overlay.visible .success-text{opacity:1;transform:translateY(0)}.success-subtext{color:var(--muted-foreground);opacity:0;font-size:14px;transition:opacity .5s .5s}.success-overlay.visible .success-subtext{opacity:1}
