:where(.astro-sgpqyurt){margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--color-bg-primary);color:var(--color-text-primary);min-height:100vh;display:flex;align-items:center;justify-content:center}.login-container:where(.astro-sgpqyurt){width:100%;max-width:420px;padding:var(--space-3xl)}.login-card:where(.astro-sgpqyurt){background:var(--color-bg-secondary);border:var(--border-width) solid rgba(255,255,255,var(--opacity-light));border-radius:var(--radius-xl);padding:var(--space-4xl)}.login-header:where(.astro-sgpqyurt){text-align:center;margin-bottom:2rem}.logo:where(.astro-sgpqyurt){margin-bottom:1.5rem;width:auto;height:40px;object-fit:contain}.login-header:where(.astro-sgpqyurt) h1:where(.astro-sgpqyurt){font-size:var(--font-size-4xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-sm);color:var(--color-text-primary)}.login-header:where(.astro-sgpqyurt) p:where(.astro-sgpqyurt){font-size:.875rem;color:#ffffff80}.login-form:where(.astro-sgpqyurt){display:flex;flex-direction:column;gap:1.25rem}.form-group:where(.astro-sgpqyurt){display:flex;flex-direction:column;gap:.5rem}.form-group:where(.astro-sgpqyurt) label:where(.astro-sgpqyurt){font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-quaternary);text-transform:uppercase;letter-spacing:.05em}.password-input-wrapper:where(.astro-sgpqyurt){position:relative;display:flex;align-items:center}.form-group:where(.astro-sgpqyurt) input:where(.astro-sgpqyurt){width:100%;padding:var(--space-md) var(--space-lg);padding-right:calc(var(--space-lg) + 28px);font-size:var(--font-size-lg);color:var(--color-text-primary);background:rgba(255,255,255,var(--opacity-subtle));border:var(--border-width) solid rgba(255,255,255,var(--opacity-light));border-radius:var(--radius-md);outline:none;transition:border-color var(--transition-fast),background-color var(--transition-fast)}.password-toggle:where(.astro-sgpqyurt){position:absolute;right:var(--space-md);background:none;border:none;padding:var(--space-xs);cursor:pointer;color:var(--color-text-quinary);display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast);outline:none}.password-toggle:where(.astro-sgpqyurt):hover{color:var(--color-text-tertiary)}.password-toggle:where(.astro-sgpqyurt):focus-visible{outline:2px solid var(--color-text-primary);outline-offset:2px;border-radius:var(--radius-sm)}.password-toggle:where(.astro-sgpqyurt) svg:where(.astro-sgpqyurt){width:20px;height:20px;stroke-width:2}.form-group:where(.astro-sgpqyurt) input:where(.astro-sgpqyurt)::placeholder{color:var(--color-text-disabled)}.form-group:where(.astro-sgpqyurt) input:where(.astro-sgpqyurt):focus{border-color:rgba(255,255,255,var(--opacity-strong));background:rgba(255,255,255,var(--opacity-subtle))}.form-group:where(.astro-sgpqyurt) input:where(.astro-sgpqyurt):focus-visible{outline:2px solid var(--color-text-primary);outline-offset:2px}.btn-primary:where(.astro-sgpqyurt){width:100%;background:var(--color-text-primary);color:var(--color-bg-primary);border:none;padding:var(--space-md) var(--space-xl);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);border-radius:var(--radius-md);cursor:pointer;transition:opacity var(--transition-fast);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);margin-top:var(--space-sm);outline:none}.btn-primary:where(.astro-sgpqyurt):hover:not(:disabled){opacity:var(--opacity-near)}.btn-primary:where(.astro-sgpqyurt):disabled{cursor:not-allowed;opacity:var(--opacity-strongest)}.btn-primary:where(.astro-sgpqyurt):focus-visible{outline:2px solid var(--color-text-primary);outline-offset:2px}.btn-loading:where(.astro-sgpqyurt){display:inline-flex;align-items:center;justify-content:center}.spinner:where(.astro-sgpqyurt){width:20px;height:20px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message:where(.astro-sgpqyurt){padding:var(--space-md) var(--space-md);font-size:var(--font-size-base);color:var(--color-status-critical);background:rgba(239,68,68,var(--opacity-subtle));border:var(--border-width) solid rgba(239,68,68,var(--opacity-medium));border-radius:var(--radius-md)}.info-text:where(.astro-sgpqyurt){font-size:var(--font-size-md);color:var(--color-text-quaternary);line-height:var(--line-height-tight);margin-bottom:var(--space-sm)}.password-requirements:where(.astro-sgpqyurt){padding:var(--space-md) var(--space-lg);background:var(--color-bg-secondary);border:var(--border-width) solid rgba(255,255,255,var(--opacity-light));border-radius:var(--radius-md)}.password-requirements:where(.astro-sgpqyurt) p:where(.astro-sgpqyurt){font-size:var(--font-size-sm);color:var(--color-text-quinary);margin-bottom:var(--space-sm)}.password-requirements:where(.astro-sgpqyurt) ul:where(.astro-sgpqyurt){list-style:none;display:grid;gap:.25rem}.password-requirements:where(.astro-sgpqyurt) li:where(.astro-sgpqyurt){font-size:var(--font-size-sm);color:var(--color-text-quinary);padding-left:var(--space-xl);position:relative}.password-requirements:where(.astro-sgpqyurt) li:where(.astro-sgpqyurt):before{content:"○";position:absolute;left:0;color:var(--color-text-disabled)}.password-requirements:where(.astro-sgpqyurt) li:where(.astro-sgpqyurt).valid{color:var(--color-status-healthy)}.password-requirements:where(.astro-sgpqyurt) li:where(.astro-sgpqyurt).valid:before{content:"●";color:var(--color-status-healthy)}.login-footer:where(.astro-sgpqyurt){margin-top:var(--space-2xl);padding-top:var(--space-2xl);border-top:var(--border-width) solid rgba(255,255,255,var(--opacity-light));text-align:center}.login-footer:where(.astro-sgpqyurt) p:where(.astro-sgpqyurt){font-size:var(--font-size-base);color:var(--color-text-quaternary)}.footer-text:where(.astro-sgpqyurt){color:var(--color-text-quinary)}.footer-link:where(.astro-sgpqyurt){color:var(--color-text-tertiary);text-decoration:none;transition:color var(--transition-fast);outline:none}.footer-link:where(.astro-sgpqyurt):hover{color:var(--color-text-primary)}.footer-link:where(.astro-sgpqyurt):focus-visible{outline:2px solid var(--color-text-primary);outline-offset:2px;border-radius:var(--radius-sm)}@media(max-width:600px){.login-container:where(.astro-sgpqyurt){padding:1rem}.login-card:where(.astro-sgpqyurt){padding:1.5rem}}
