.modal-overlay.svelte-ljs6zm.svelte-ljs6zm{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:50000;padding:1rem;animation:svelte-ljs6zm-fadeIn .2s ease}@keyframes svelte-ljs6zm-fadeIn{0%{opacity:0}to{opacity:1}}.modal-content.svelte-ljs6zm.svelte-ljs6zm{background:var(--card-background, white);border-radius:var(--radius-lg, 1rem);width:100%;max-width:450px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px #0000004d;animation:svelte-ljs6zm-slideIn .3s ease}@keyframes svelte-ljs6zm-slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.close-btn.svelte-ljs6zm.svelte-ljs6zm{position:absolute;top:1rem;right:1rem;width:36px;height:36px;border-radius:50%;background:#0000000d;border:none;color:var(--body-text-color, #333);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:background .2s}.close-btn.svelte-ljs6zm.svelte-ljs6zm:hover{background:#0000001a}.modal-body.svelte-ljs6zm.svelte-ljs6zm{padding:2.5rem}.modal-title.svelte-ljs6zm.svelte-ljs6zm{font-size:2rem;font-weight:700;color:var(--body-text-color, #333);margin-bottom:2rem;text-align:center}.error-message.svelte-ljs6zm.svelte-ljs6zm{background-color:var(--color-error-50, #fee);border:1px solid var(--color-error-200, #fcc);border-radius:var(--radius-base, .5rem);padding:1rem;margin-bottom:1.5rem;color:var(--color-error-700, #c33)}.login-form.svelte-ljs6zm.svelte-ljs6zm{display:flex;flex-direction:column;gap:1.5rem}.form-group.svelte-ljs6zm.svelte-ljs6zm{display:flex;flex-direction:column;gap:.5rem}label.svelte-ljs6zm.svelte-ljs6zm{font-weight:600;color:var(--text-secondary-color, #555)}input.svelte-ljs6zm.svelte-ljs6zm{padding:.75rem;border:2px solid var(--input-border, #ddd);border-radius:var(--radius-base, .5rem);font-size:1rem;transition:border-color .3s;background:var(--input-background, white);color:var(--body-text-color, #333)}input.svelte-ljs6zm.svelte-ljs6zm:focus{outline:none;border-color:var(--input-border-focus, #667eea)}input.error.svelte-ljs6zm.svelte-ljs6zm{border-color:var(--color-error-500, #f44)}input.svelte-ljs6zm.svelte-ljs6zm:disabled{background-color:var(--color-surface-100, #f5f5f5);cursor:not-allowed}.password-wrapper.svelte-ljs6zm.svelte-ljs6zm{position:relative;display:flex;align-items:center}.password-wrapper.svelte-ljs6zm input.svelte-ljs6zm{width:100%;padding-right:2.75rem}.toggle-password.svelte-ljs6zm.svelte-ljs6zm{position:absolute;right:.5rem;background:none;border:none;cursor:pointer;color:var(--text-tertiary-color, #888);padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s}.toggle-password.svelte-ljs6zm.svelte-ljs6zm:hover{color:var(--body-text-color, #333)}.error-text.svelte-ljs6zm.svelte-ljs6zm{color:var(--color-error-500, #f44);font-size:.875rem}.btn-submit.svelte-ljs6zm.svelte-ljs6zm{padding:.875rem;background:var(--color-primary-500, #667eea);color:#fff;border:none;border-radius:var(--radius-base, .5rem);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-submit.svelte-ljs6zm.svelte-ljs6zm:hover:not(:disabled){background:var(--color-primary-600, #5a67d8);transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.btn-submit.svelte-ljs6zm.svelte-ljs6zm:disabled{opacity:.6;cursor:not-allowed}.modal-footer.svelte-ljs6zm.svelte-ljs6zm{margin-top:2rem;display:flex;flex-direction:column;gap:1rem;text-align:center}.link-secondary.svelte-ljs6zm.svelte-ljs6zm{color:var(--color-primary-500, #667eea);text-decoration:none;font-size:.875rem;background:none;border:none;cursor:pointer;padding:0}.link-secondary.svelte-ljs6zm.svelte-ljs6zm:hover{text-decoration:underline}.register-prompt.svelte-ljs6zm.svelte-ljs6zm{display:flex;gap:.5rem;justify-content:center;align-items:center;color:var(--text-tertiary-color, #666)}.link-primary.svelte-ljs6zm.svelte-ljs6zm{color:var(--color-primary-500, #667eea);font-weight:600;text-decoration:none}.link-primary.svelte-ljs6zm.svelte-ljs6zm:hover{text-decoration:underline}@media (max-width: 640px){.modal-body.svelte-ljs6zm.svelte-ljs6zm{padding:1.5rem}.modal-title.svelte-ljs6zm.svelte-ljs6zm{font-size:1.5rem}}
