:root{--background-start: #f4f7f6;--background-end: #d6e0e5;--primary-text: #333;--secondary-text: #555;--accent-color: #1ba3ce;--accent-color-darker: #1682a5;--white: #fff;--light-gray: #f0f0f0;--border-color: #ddd;--error-bg: #ffebee;--error-text: #e53935;--success-bg: #e8f5e9;--success-text: #2e7d32;--shadow-color: rgba(0, 0, 0, .08);--shadow-color-hover: rgba(0, 0, 0, .12);--shape-color-1: rgba(27, 163, 206, .1);--shape-color-2: rgba(214, 224, 229, .3);--shape-color-3: rgba(255, 255, 255, .5);--input-focus-shadow: rgba(27, 163, 206, .25);--button-shadow: rgba(27, 163, 206, .2);--button-shadow-hover: rgba(27, 163, 206, .3);--input-bg: #fcfcfc;--input-border: #ddd;--input-border-focus: #1ba3ce;--error-color: #e53935;--success-color: #2e7d32;--text-secondary: #555;--primary-color: #1ba3ce;--primary-dark: #1682a5;--transition-fast: .2s ease-out;--transition-medium: .3s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:100%;scroll-behavior:smooth;height:100%;overflow-y:auto}.login-page-container.svelte-1p05wcg{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.6;color:var(--primary-text);background:linear-gradient(135deg,var(--background-start),var(--background-end));display:flex;justify-content:center;align-items:center;min-height:100vh;padding:1rem;overflow-x:hidden;position:fixed;inset:0;perspective:800px;width:100%;z-index:1000}.background-shapes.svelte-1p05wcg{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;z-index:0;pointer-events:none}.shape.svelte-1p05wcg{position:absolute;border-radius:30% 70% 70% 30%/30% 30% 70% 70%;opacity:.7;will-change:transform,opacity;transition:transform var(--transition-medium);animation:svelte-1p05wcg-float 15s infinite ease-in-out alternate}.shape-1.svelte-1p05wcg{width:220px;height:220px;background:var(--shape-color-1);top:12%;left:10%;animation-duration:18s}.shape-2.svelte-1p05wcg{width:160px;height:160px;background:var(--shape-color-2);bottom:10%;right:15%;animation-duration:22s;animation-direction:alternate-reverse;border-radius:60% 40% 30% 70%/60% 30% 70% 40%}.shape-3.svelte-1p05wcg{width:70px;height:70px;background:var(--shape-color-3);top:55%;left:35%;animation-duration:16s}.shape-4.svelte-1p05wcg{width:100px;height:100px;background:var(--shape-color-1);opacity:.5;top:75%;left:8%;animation-duration:20s;animation-direction:alternate-reverse;border-radius:40% 60% 60% 40%/70% 50% 50% 30%}@keyframes svelte-1p05wcg-float{0%{transform:translateY(0) rotate(0) scale(1);opacity:.5}to{transform:translateY(-25px) rotate(15deg) scale(1.05);opacity:.8}}.login-box.svelte-1p05wcg{background:var(--white);padding:clamp(1.2rem,4vh,2rem) clamp(1.2rem,5vw,2rem);border-radius:16px;box-shadow:0 8px 25px var(--shadow-color),0 4px 10px #0000000d;text-align:center;max-width:380px;width:100%;position:relative;z-index:1;opacity:0;transform:translateY(15px) scale(.98);animation:svelte-1p05wcg-popIn .6s cubic-bezier(.25,.46,.45,.94) forwards .2s;will-change:transform,opacity;max-height:calc(100vh - 4rem);overflow-y:auto}.login-box.svelte-1p05wcg::-webkit-scrollbar{display:none}.login-box.svelte-1p05wcg{-ms-overflow-style:none;scrollbar-width:none}@keyframes svelte-1p05wcg-popIn{to{opacity:1;transform:translateY(0) scale(1)}}.logo-container.svelte-1p05wcg{width:60px;height:60px;margin:0 auto .8rem;display:flex;justify-content:center;align-items:center;border-radius:50%;background:var(--light-gray);overflow:hidden;flex-shrink:0}.logo-container.svelte-1p05wcg img:where(.svelte-1p05wcg){display:block;max-width:80%;height:auto}.login-box.svelte-1p05wcg h2:where(.svelte-1p05wcg){margin-bottom:.4rem;font-size:clamp(1.4rem,4vw,1.65rem);font-weight:600;color:var(--primary-text)}.login-box.svelte-1p05wcg p:where(.svelte-1p05wcg){margin-bottom:1.2rem;font-size:clamp(.85rem,2.5vw,.95rem);color:var(--secondary-text)}.message-container.svelte-1p05wcg,.login-error.svelte-1p05wcg{padding:.7rem 1rem;border-radius:8px;margin-bottom:.8rem;font-size:.85rem;text-align:left;flex-shrink:0}.message-container.svelte-1p05wcg{background-color:var(--success-bg);color:var(--success-text)}.login-error.svelte-1p05wcg{background-color:var(--error-bg);color:var(--error-text)}.tab-container.svelte-1p05wcg{margin-bottom:1rem;flex-shrink:0}.tab-buttons.svelte-1p05wcg{display:flex;margin-bottom:1rem;border-radius:8px;overflow:hidden;background-color:var(--light-gray);position:relative}.tab-button.svelte-1p05wcg{flex:1;padding:.6rem .5rem;background:none;border:none;color:var(--secondary-text);font-size:.85rem;font-weight:500;cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast);position:relative;z-index:1;white-space:nowrap}.tab-button.svelte-1p05wcg:hover{color:var(--primary-text);transform:translateY(-1px)}.tab-button.svelte-1p05wcg:active{transform:translateY(0)}.login-page-container .tab-button.active{color:#fff!important;font-weight:600!important}.tab-indicator.svelte-1p05wcg{position:absolute;top:0;bottom:0;width:50%;background-color:var(--accent-color);border-radius:8px;transition:transform var(--transition-medium);z-index:0}.tab-buttons[data-active-tab=signup].svelte-1p05wcg .tab-indicator:where(.svelte-1p05wcg){transform:translate(100%)}.tab-content{display:none!important}.tab-content.active{display:block!important;animation:svelte-1p05wcg-fadeIn .4s ease forwards}.form-group.svelte-1p05wcg{margin-bottom:1rem;text-align:left}.form-label.svelte-1p05wcg{display:block;margin-bottom:.5rem;font-size:.9rem;color:var(--secondary-text);font-weight:500}.form-input.svelte-1p05wcg{width:100%;padding:.875rem 1rem;border:1px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);background-color:#f8fafc;color:var(--primary-text)}.form-input.svelte-1p05wcg::-moz-placeholder{color:#94a3b8;font-size:.95rem}.form-input.svelte-1p05wcg::placeholder{color:#94a3b8;font-size:.95rem}.form-input.svelte-1p05wcg:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px #1ba3ce1a;outline:none;background-color:var(--white)}.form-link.svelte-1p05wcg{color:var(--accent-color);text-decoration:none;font-size:.8rem;cursor:pointer;transition:color var(--transition-fast);display:inline-block;padding:.1rem 0;background:none;border:none}.form-link.svelte-1p05wcg:hover{color:var(--accent-color-darker);text-decoration:underline}.forgot-password-container.svelte-1p05wcg{text-align:right;margin-top:.5rem;margin-bottom:1rem}.back-to-login-container.svelte-1p05wcg{text-align:center;margin-top:1rem}.form-divider.svelte-1p05wcg{display:flex;align-items:center;margin:1.5rem 0;color:#aaa;font-size:.75rem;text-transform:uppercase}.form-divider.svelte-1p05wcg:before,.form-divider.svelte-1p05wcg:after{content:"";flex:1;height:1px;background-color:var(--border-color)}.form-divider.svelte-1p05wcg span:where(.svelte-1p05wcg){padding:0 10px}.legal-links.svelte-1p05wcg{margin-top:1.2rem;font-size:.75rem;color:#aaa;flex-shrink:0}.legal-links.svelte-1p05wcg a:where(.svelte-1p05wcg){color:#aaa;text-decoration:none;margin:0 4px;transition:color var(--transition-fast)}.legal-links.svelte-1p05wcg a:where(.svelte-1p05wcg):hover{color:var(--secondary-text);text-decoration:none}@keyframes svelte-1p05wcg-fadeIn{0%{opacity:0}to{opacity:1}}.login-page-container button[type=submit],.login-page-container .button-primary{background:linear-gradient(to right,#1ba3ce,#1682a5)!important;color:#fff!important;border:none!important;padding:.875rem 1rem!important;border-radius:8px!important;font-size:1rem!important;font-weight:500!important;width:100%!important;transition:all .2s ease!important;box-shadow:0 3px 6px #1ba3ce33!important}.login-page-container button[type=submit]:hover,.login-page-container .button-primary:hover{background:linear-gradient(to right,#1682a5,#1ba3ce)!important;transform:translateY(-2px)!important;box-shadow:0 5px 10px #1ba3ce4d!important}.login-page-container .google-btn,.login-page-container button:has(svg){background-color:#fff!important;color:var(--secondary-text)!important;border:1px solid #e2e8f0!important;padding:.875rem 1rem!important;border-radius:8px!important;font-size:1rem!important;font-weight:500!important;width:100%!important;transition:all .2s ease!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:.5rem!important}.login-page-container button svg{display:inline-block!important;margin-right:.5rem!important}.login-page-container button[class*=outline]{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:.5rem!important}.login-page-container button[class*=outline] span{display:flex!important;flex-direction:row!important;align-items:center!important;gap:.5rem!important}.login-page-container .google-btn:hover{background-color:#f8fafc!important;border-color:#cbd5e1!important;box-shadow:0 2px 6px #0000001a!important}@media (min-height: 650px){.login-box.svelte-1p05wcg{max-height:calc(100vh - 4rem)}}@media (max-height: 649px){.login-page-container.svelte-1p05wcg{align-items:flex-start;padding-top:2rem;padding-bottom:2rem}.login-box.svelte-1p05wcg{max-height:none;margin-top:0;margin-bottom:1rem}.background-shapes.svelte-1p05wcg{display:none}}@media (max-width: 768px){.shape-1.svelte-1p05wcg{width:180px;height:180px;top:8%;left:5%}.shape-2.svelte-1p05wcg{width:130px;height:130px;bottom:8%;right:10%}.shape-4.svelte-1p05wcg{display:none}}@media (max-width: 576px){.login-page-container.svelte-1p05wcg{padding:1.5rem .5rem .5rem;align-items:flex-start}.login-box.svelte-1p05wcg{padding:1.5rem 1.2rem;margin:0 0 1rem;max-height:none}.logo-container.svelte-1p05wcg{width:55px;height:55px}.login-box.svelte-1p05wcg h2:where(.svelte-1p05wcg){font-size:1.5rem}.login-box.svelte-1p05wcg p:where(.svelte-1p05wcg){font-size:.9rem}}@media (max-width: 375px){.login-page-container.svelte-1p05wcg{padding:1rem .5rem .5rem}.login-box.svelte-1p05wcg{padding:1.2rem 1rem;border-radius:12px}.logo-container.svelte-1p05wcg{width:50px;height:50px}.login-box.svelte-1p05wcg h2:where(.svelte-1p05wcg){font-size:1.3rem}.login-box.svelte-1p05wcg p:where(.svelte-1p05wcg){font-size:.8rem}.tab-button.svelte-1p05wcg{font-size:.8rem;padding:.5rem .4rem}.form-link.svelte-1p05wcg{font-size:.75rem}.legal-links.svelte-1p05wcg{font-size:.7rem;margin-top:1rem}}
