*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;margin:0;font-family:Arial,sans-serif}.home-container{display:flex;flex-direction:column;min-height:100vh;width:100vw}.navbar{display:flex;justify-content:space-between;align-items:center;padding:20px 50px;background-color:indigo;color:#fff}.navbar .logo{font-size:28px;font-weight:700}.nav-buttons .btn{padding:10px 20px;text-decoration:none;font-weight:700;border-radius:6px;margin-left:10px;transition:.3s}.btn-light{background-color:#fff;color:indigo}.btn-light:hover{background-color:#ddd}.btn-dark{background-color:#6a0dad;color:#fff}.btn-dark:hover{background-color:#7d3c98}.hero{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:80px 20px;background:linear-gradient(135deg,indigo,#8a2be2);color:#fff}.hero h2{font-size:48px;margin-bottom:20px}.hero p{font-size:20px;max-width:700px;margin-bottom:30px}.hero-buttons .btn{margin:0 10px}.features{padding:60px 20px;background-color:#f3f3f3;text-align:center;color:#000}.features h3{font-size:32px;margin-bottom:40px}.feature-cards{display:flex;flex-wrap:wrap;justify-content:center;gap:20px}.card{background-color:#fff;padding:20px;width:280px;border-radius:8px;box-shadow:0 6px 12px #0000001a;transition:.3s}.card:hover{box-shadow:0 10px 20px #00000026}.card h4{margin-bottom:10px;font-size:22px;color:indigo}footer{padding:20px;text-align:center;background-color:indigo;color:#fff}.hero-buttons{margin-top:25px;display:flex;justify-content:center;gap:15px}.btn-light,.btn-dark{padding:12px 26px;font-size:1.1rem;border-radius:8px;font-weight:600;text-decoration:none;transition:all .25s ease}.btn-light{background:#fff;color:#333;border:2px solid #ddd}.btn-light:hover{background:#f2f2f2;transform:translateY(-3px);box-shadow:0 4px 12px #0000001a}.btn-dark{background:#111;color:#fff;border:2px solid #111}.btn-dark:hover{background:#222;transform:translateY(-3px);box-shadow:0 4px 12px #0003}.navbar{display:flex;justify-content:space-between;align-items:center;padding:18px 30px}.nav-buttons{display:flex;gap:12px}.btn{text-decoration:none;padding:10px 20px;font-weight:600;border-radius:6px;transition:.2s ease}@media(max-width:600px){.navbar{flex-direction:column;gap:15px;padding:12px}.nav-buttons{width:100%;justify-content:center;flex-wrap:wrap;gap:10px}.btn{padding:10px 16px;font-size:.9rem}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f8f9fa;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;width:100vw}.login-card{background:#fff;padding:32px;border-radius:12px;box-shadow:0 8px 24px #0000001a;width:100%;max-width:420px;position:relative}.login-card h2{text-align:center;margin-bottom:8px;color:indigo;font-size:1.8rem}.hint{text-align:center;font-size:.9rem;color:#666;margin-bottom:20px}.hint a{color:indigo;text-decoration:underline;font-weight:500}.hint a:hover{color:#6a0dad}.alert{padding:12px 16px;border-radius:6px;margin-bottom:20px;text-align:center;font-weight:500;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.login-card input{width:100%;padding:14px;margin-bottom:16px;border:1px solid #ddd;border-radius:8px;font-size:16px;box-sizing:border-box;transition:border-color .2s,box-shadow .2s}.login-card input:focus{outline:none;border-color:indigo;box-shadow:0 0 0 3px #4b00821a}.password-toggle-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:1.3rem;cursor:pointer;color:#777;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;padding:0}.password-toggle-btn:hover{background-color:#f0f0f0;color:#333}.login-card button[type=submit]{width:100%;padding:14px;background:indigo;color:#fff;border:none;border-radius:8px;font-size:17px;font-weight:600;cursor:pointer;transition:background .3s,transform .1s}.login-card button[type=submit]:hover:not(:disabled){background:#6a0dad;transform:translateY(-1px)}.login-card button[type=submit]:disabled{opacity:.7;cursor:not-allowed;transform:none}.signup-link{text-align:center;margin-top:24px;font-size:15px;color:#555}.link-btn{background:none;border:none;color:indigo;font-weight:600;cursor:pointer;text-decoration:underline;padding:0;font-size:inherit;margin-left:4px}.link-btn:hover{color:#6a0dad;text-decoration:none}@media(max-width:480px){.login-card{padding:24px 20px}.login-card h2{font-size:1.6rem}}.signup-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f5f7fa;padding:20px;width:100vw}.signup-card{background:#fff;padding:32px;border-radius:12px;box-shadow:0 6px 20px #00000014;width:100%;max-width:420px}.signup-card h2{text-align:center;margin-bottom:24px;color:indigo;font-size:1.8rem}.signup-card input{width:100%;padding:14px;margin-bottom:16px;border:1px solid #ddd;border-radius:8px;font-size:16px;box-sizing:border-box}.signup-card input:focus{outline:none;border-color:indigo;box-shadow:0 0 0 3px #4b00821a}.password-wrapper{position:relative}.password-wrapper input{padding-right:50px}.password-toggle-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:1.3rem;cursor:pointer;color:#666;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.password-toggle-btn:hover{background-color:#f0f0f0;color:#333;border-radius:4px}.signup-card button[type=submit]{width:100%;padding:14px;background:indigo;color:#fff;border:none;border-radius:8px;font-size:17px;font-weight:600;cursor:pointer;transition:background .3s}.signup-card button[type=submit]:hover:not(:disabled){background:#6a0dad}.signup-card button[type=submit]:disabled{opacity:.7;cursor:not-allowed}.alert{padding:12px;border-radius:6px;margin-bottom:16px;text-align:center;font-weight:500}.alert.error{background:#ffebee;color:#c62828;border:1px solid #ffcdd2}.alert.success{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.login-link{text-align:center;margin-top:20px;font-size:15px;color:#555}.link-btn{background:none;border:none;color:indigo;font-weight:600;cursor:pointer;text-decoration:underline;padding:0;font-size:inherit}.link-btn:hover{color:#6a0dad}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
