*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;color:#1e293b;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{font-family:inherit}.landing{display:flex;min-height:100vh}.landing-left{width:50%;background:#0f172a;display:flex;align-items:center;justify-content:center;padding:60px 56px;position:sticky;top:0;height:100vh;overflow:hidden}.landing-left-inner{max-width:480px;width:100%}.brand{display:flex;align-items:center;gap:10px;margin-bottom:48px}.brand-icon{font-size:26px;color:#7c3aed;line-height:1}.brand-name{font-size:24px;font-weight:800;color:#fff;letter-spacing:-.5px}.hero-headline{font-size:40px;font-weight:800;color:#fff;line-height:1.15;letter-spacing:-1px;margin-bottom:18px}.hero-sub{font-size:15px;color:#94a3b8;line-height:1.7;margin-bottom:40px;max-width:400px}.value-list{list-style:none;display:flex;flex-direction:column;gap:22px;margin-bottom:44px}.value-list li{display:flex;gap:14px;align-items:flex-start}.value-icon{font-size:14px;color:#7c3aed;margin-top:2px;flex-shrink:0;width:18px;text-align:center}.value-list strong{display:block;font-size:14px;font-weight:700;color:#e2e8f0;margin-bottom:3px}.value-list p{font-size:13px;color:#64748b;line-height:1.6}.social-proof{display:flex;align-items:center;gap:24px;padding-top:32px;border-top:1px solid rgba(255,255,255,.07)}.stat{display:flex;flex-direction:column;gap:3px}.stat-num{font-size:22px;font-weight:800;color:#fff;letter-spacing:-.5px}.stat-label{font-size:11px;font-weight:600;color:#7c3aed;text-transform:uppercase;letter-spacing:.8px}.stat-divider{width:1px;height:36px;background:#ffffff1a;flex-shrink:0}.landing-right{width:50%;background:#f1f5f9;display:flex;align-items:flex-start;justify-content:center;padding:60px 56px;overflow-y:auto;min-height:100vh}.landing-right-inner{max-width:440px;width:100%;padding-bottom:48px}.auth-heading{font-size:26px;font-weight:800;color:#0f172a;letter-spacing:-.5px;margin-bottom:6px}.auth-sub{font-size:14px;color:#64748b;margin-bottom:28px;line-height:1.6}.role-section{margin-bottom:28px}.role-group{margin-bottom:16px}.role-group-label{font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.8px;margin-bottom:8px}.role-options{display:flex;gap:10px}.role-option{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:12px 14px;border-radius:10px;border:1.5px solid #e2e8f0;background:#fff;cursor:pointer;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease;text-align:left}.role-option:hover{border-color:#c4b5fd;background:#faf8ff}.role-option.selected{border-color:#7c3aed;background:#f5f3ff;box-shadow:0 0 0 3px #7c3aed1a}.role-option-title{font-size:13.5px;font-weight:700;color:#0f172a;line-height:1.2}.role-option.selected .role-option-title{color:#7c3aed}.role-option-desc{font-size:12px;color:#94a3b8;line-height:1.4;font-weight:400}.redirect-hint{font-size:12px;color:#94a3b8;margin-top:8px;font-style:italic;min-height:18px;transition:color .2s ease}.redirect-hint.redirect-hint-active{color:#7c3aed;font-style:normal;font-weight:500}.auth-form{display:flex;flex-direction:column;gap:14px;margin-bottom:20px}.field{display:flex;flex-direction:column;gap:5px}.field-label{font-size:13px;font-weight:600;color:#374151}.field-input{height:42px;padding:0 14px;border-radius:8px;border:1.5px solid #e2e8f0;background:#fff;font-size:14px;color:#0f172a;outline:none;transition:border-color .14s ease,box-shadow .14s ease;font-family:inherit}.field-input::placeholder{color:#94a3b8}.field-input:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.forgot-row{display:flex;justify-content:flex-end;margin-top:-6px}.forgot-link{background:none;border:none;padding:0;font-size:12.5px;color:#7c3aed;cursor:pointer;font-weight:500;transition:color .14s ease}.forgot-link:hover{color:#6d28d9;text-decoration:underline}.btn-primary{height:44px;border-radius:8px;border:none;background:#7c3aed;color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:background .14s ease,transform .12s ease,box-shadow .14s ease;letter-spacing:.1px;margin-top:4px}.btn-primary:hover:not(:disabled){background:#6d28d9;transform:translateY(-1px);box-shadow:0 4px 14px #6d28d94d}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:none}.btn-primary:disabled{background:#c4b5fd;cursor:not-allowed}.auth-divider{display:flex;align-items:center;gap:12px;margin-bottom:16px}.auth-divider-line{flex:1;height:1px;background:#e2e8f0}.auth-divider-text{font-size:12px;color:#94a3b8;font-weight:500;flex-shrink:0}.btn-google{width:100%;height:44px;display:flex;align-items:center;justify-content:center;gap:10px;border-radius:8px;border:1.5px solid #e2e8f0;background:#fff;color:#374151;font-size:14px;font-weight:600;cursor:pointer;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease;margin-bottom:24px}.btn-google:hover:not(:disabled){border-color:#c4b5fd;background:#faf8ff;box-shadow:0 2px 8px #0000000f}.btn-google:disabled{opacity:.5;cursor:not-allowed}.auth-toggle{text-align:center;font-size:13px;color:#64748b}.auth-toggle-link{background:none;border:none;padding:0;font-size:13px;color:#7c3aed;font-weight:600;cursor:pointer;transition:color .14s ease}.auth-toggle-link:hover{color:#6d28d9;text-decoration:underline}@media(max-width:860px){.landing{flex-direction:column}.landing-left{width:100%;height:auto;position:static;padding:48px 32px}.hero-headline{font-size:30px}.landing-right{width:100%;padding:40px 32px;min-height:auto}}@media(max-width:480px){.landing-left,.landing-right{padding:32px 20px}.hero-headline{font-size:26px}.role-options{flex-direction:column}.social-proof{gap:16px}}
