@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";body{margin:0;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}:root{--auth-bg-start: #F5F7FA;--auth-bg-end: #EDF0F5;--auth-text-primary: #1B3A5C;--auth-text-secondary: #475569;--auth-text-muted: #64748B;--auth-text-subtle: #94A3B8;--auth-accent: #1B3A5C;--auth-accent-hover: #142d49;--auth-accent-muted: rgba(27, 58, 92, .08);--auth-accent-glow: rgba(27, 58, 92, .06);--auth-border: #E8ECF1;--auth-surface: #FFFFFF;--auth-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif}.auth-page{display:flex;min-height:100vh;background:#fff;font-family:var(--auth-font)}.auth-branding{flex:1;display:flex;flex-direction:column;justify-content:space-between;padding:48px 48px 48px 72px;background:#fff;border-right:1px solid #E8ECF1;position:relative;overflow:hidden}.auth-branding:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 20% 80%,rgba(27,58,92,.03) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(56,161,105,.03) 0%,transparent 50%);pointer-events:none}.auth-particle-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.auth-branding-content{position:relative;z-index:1;opacity:0;transform:translateY(20px);animation:authFadeIn .9s cubic-bezier(.16,1,.3,1) forwards}@keyframes authFadeIn{to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.auth-branding-content,.auth-form-wrapper{animation:none;opacity:1;transform:none}}.auth-logo{display:flex;align-items:center;gap:12px;margin-bottom:64px;text-decoration:none;cursor:pointer}.auth-logo-img{height:60px;width:auto}.auth-logo-img-mobile{height:36px;width:auto}.auth-headline{color:#1b3a5c!important;font-size:clamp(2.4rem,5vw,3.5rem)!important;font-weight:700!important;line-height:1.08!important;letter-spacing:-.035em!important;margin-bottom:24px!important;max-width:500px;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif!important}.auth-subheadline{color:#64748b!important;font-size:clamp(1rem,1.8vw,1.18rem)!important;line-height:1.7!important;margin-bottom:48px!important;max-width:450px}.auth-features{display:flex;flex-direction:column;gap:24px}.auth-feature{display:flex;align-items:flex-start;gap:16px}.auth-feature-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#1b3a5c0f;border:1px solid #E8ECF1;border-radius:12px;color:#1b3a5c;font-size:20px;flex-shrink:0}.auth-feature-content{display:flex;flex-direction:column;gap:4px}.auth-feature-title{color:#1b3a5c!important;font-size:clamp(1.1rem,2.5vw,1.4rem)!important;font-weight:680!important;letter-spacing:-.02em!important}.auth-feature-description{color:#94a3b8!important;font-size:.84rem!important;line-height:1.6!important}.auth-branding-footer{position:relative;z-index:1}.auth-routix-integration{color:#94a3b8!important;font-size:.84rem!important;display:block;margin-bottom:4px}.auth-routix-link{color:#3b82f6!important;text-decoration:none;font-weight:500;transition:color .2s}.auth-routix-link:hover{color:#60a5fa!important;text-decoration:underline}.auth-copyright{color:#64748b!important;font-size:.78rem!important}.auth-form-container{flex:1;display:flex;align-items:center;justify-content:center;padding:48px;background:#fff;max-width:560px}.auth-form-wrapper{width:100%;max-width:400px;opacity:0;transform:translateY(20px);animation:authFadeIn .9s cubic-bezier(.16,1,.3,1) .15s forwards}.auth-form-logo-mobile{display:none;align-items:center;gap:10px;margin-bottom:32px}.auth-form-header{margin-bottom:32px}.auth-form-title{color:#1b3a5c!important;font-size:clamp(1.8rem,4vw,2.6rem)!important;font-weight:750!important;line-height:1.15!important;letter-spacing:-.03em!important;margin-bottom:8px!important}.auth-form-subtitle{color:#64748b!important;font-size:.98rem!important;line-height:1.7!important}.auth-form .ant-form-item-label>label{color:#1b3a5c!important;font-weight:500!important;font-size:.84rem!important;letter-spacing:.01em!important}.auth-input{height:52px!important;border-radius:12px!important;border:1px solid #E8ECF1!important;background:#f5f7fa!important;color:#1b3a5c!important;font-size:.95rem!important;transition:all .2s ease!important}.auth-input .ant-input{background:transparent!important;color:#1b3a5c!important}.auth-input .ant-input::placeholder{color:#94a3b8!important}.auth-input:hover{border-color:#1b3a5c!important}.auth-input:focus,.auth-input.ant-input-affix-wrapper-focused{border-color:#1b3a5c!important;box-shadow:0 0 0 3px #1b3a5c14!important}.auth-input-icon{color:#94a3b8!important;font-size:16px!important}.auth-input .ant-input-password-icon,.auth-form .ant-input-password-icon{color:#94a3b8!important}.auth-input .ant-input-password-icon:hover,.auth-form .ant-input-password-icon:hover{color:#1b3a5c!important}.auth-form-options{display:flex;justify-content:flex-end;margin-bottom:24px}.auth-forgot-link{color:var(--auth-accent)!important;font-size:.84rem!important;font-weight:500!important;transition:color .2s ease!important}.auth-forgot-link:hover{color:var(--auth-accent-hover)!important}.auth-submit-btn{height:52px!important;border-radius:12px!important;font-size:.95rem!important;font-weight:600!important;background:#1b3a5c!important;border:none!important;box-shadow:0 2px 12px #1b3a5c33!important;transition:all .2s ease!important}.auth-submit-btn:hover{background:#142d49!important;box-shadow:0 4px 20px #1b3a5c4d!important;transform:translateY(-1px)!important}.auth-submit-btn:active{transform:translateY(0)!important}.auth-divider{margin:24px 0!important}.auth-divider:before,.auth-divider:after{border-color:#e8ecf1!important}.auth-divider-text{color:#94a3b8!important;font-size:.78rem!important}.auth-alternative{text-align:center}.auth-alternative-text{color:#64748b!important;font-size:.84rem!important}.auth-link{color:var(--auth-accent)!important;font-weight:600!important;transition:color .2s ease!important}.auth-link:hover{color:var(--auth-accent-hover)!important}.auth-password-requirements{display:flex;flex-wrap:wrap;gap:8px 16px;margin-bottom:16px;padding:12px;background:#f5f7fa;border:1px solid #E8ECF1;border-radius:12px}.auth-password-check{display:flex;align-items:center;gap:6px;font-size:.78rem;color:#94a3b8;transition:color .2s ease}.auth-password-check .anticon{font-size:12px}.auth-password-check.valid,.auth-password-check.valid .anticon{color:#10b981}.auth-form-row{display:flex;gap:16px}.auth-form-col{flex:1}.auth-back-link{display:inline-flex;align-items:center;gap:8px;color:var(--auth-accent)!important;font-size:.84rem!important;font-weight:500!important;margin-bottom:24px;transition:color .2s ease!important}.auth-back-link:hover{color:var(--auth-accent-hover)!important}.auth-success-message{display:flex;flex-direction:column;align-items:center;text-align:center;padding:32px 0}@media(max-width:1024px){.auth-branding{display:none}.auth-form-container{max-width:100%;border-left:none}.auth-form-logo-mobile{display:flex}}@media(max-width:480px){.auth-form-container{padding:24px}.auth-form-title{font-size:clamp(1.4rem,3vw,1.8rem)!important}.auth-form-row{flex-direction:column;gap:0}}
