.login-page{min-height:100dvh;font-family:var(--font-jakarta), "Avenir Next", "Helvetica Neue", Arial, sans-serif;background:#f4ede4;grid-template-columns:minmax(420px,1fr) minmax(420px,1fr);gap:0;padding:0;display:grid;overflow:hidden}.auth-panel{color:#fff;background:#3a1b4e;border-radius:0 34px 34px 0;justify-content:center;align-items:center;min-height:100dvh;padding:76px clamp(32px,6vw,88px) 48px;display:flex;position:relative}.auth-logo{width:154px;height:auto;position:absolute;top:32px;left:50%;transform:translate(-195px)}.auth-content{width:100%;max-width:390px}.auth-header{margin-bottom:27px}.auth-header>span{color:#ffffff80;letter-spacing:.1em;text-transform:uppercase;margin-bottom:9px;font-size:10px;font-weight:700;display:block}.auth-header h1{letter-spacing:-.035em;margin:0 0 8px;font-size:clamp(27px,3vw,36px);font-weight:700;line-height:1.15}.auth-header p{color:#ffffff9e;margin:0;font-size:13px;line-height:1.55}.auth-form{flex-direction:column;gap:13px;display:flex}.auth-field{flex-direction:column;gap:6px;display:flex}.auth-field>span{color:#ffffff9e;letter-spacing:.07em;text-transform:uppercase;font-size:9px;font-weight:700}.auth-field>input,.password-field,.icon-field,.access-code-field{color:#fff;background:#fff3;border:1px solid #ffffff1a;border-radius:7px;width:100%;min-height:45px;transition:border-color .18s,background .18s,box-shadow .18s}.auth-field>input{padding:0 13px}.password-field,.icon-field,.access-code-field{align-items:center;display:flex}.password-field{position:relative}.password-field input,.icon-field input,.access-code-field input{color:#fff;width:100%;min-width:0;height:43px;font:inherit;background:0 0;border:0;outline:0;padding:0 13px;font-size:12px}.icon-field,.password-field{color:#ffffff80;padding-left:12px}.icon-field input,.password-field input{padding-left:9px}.password-field input{padding-right:44px}.password-lock{flex:none}.access-code-field{color:#ffffff80;padding-left:12px}.access-code-field input{padding-left:9px}.auth-field>input,.password-field input{font:inherit;outline:0;font-size:12px}.auth-field input::placeholder{color:#ffffff85}.auth-field>input:focus,.password-field:focus-within,.icon-field:focus-within,.access-code-field:focus-within{background:#ffffff40;border-color:#ffffff80;box-shadow:0 0 0 3px #ffffff0f}.auth-field input:-webkit-autofill{-webkit-text-fill-color:#fff;caret-color:#fff;transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #624a72}.auth-field input:-webkit-autofill:hover{-webkit-text-fill-color:#fff;caret-color:#fff;transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #624a72}.auth-field input:-webkit-autofill:focus{-webkit-text-fill-color:#fff;caret-color:#fff;transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #624a72}.password-field button{color:#ffffff8c;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:50%;right:7px;transform:translateY(-50%)}.password-field button:hover,.password-field button:focus-visible{color:#fff;background:0 0;outline:none}.auth-feedback{border-radius:7px;align-items:center;gap:7px;margin:0;padding:9px 11px;font-size:11px;line-height:1.4;display:flex}.auth-feedback.error{color:#ffd9df;background:#c82e4d38}.auth-feedback.success{color:#ccffe8;background:#2fb5802e}.auth-submit{color:#183d2e;letter-spacing:.02em;cursor:pointer;background:#5cd494;border:0;border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:44px;margin-top:3px;padding:10px 15px;font-size:11px;font-weight:750;transition:background .18s,transform .18s;display:flex}.auth-submit:hover:not(:disabled){background:#50c789}.auth-submit:focus-visible{outline-offset:2px;outline:3px solid #5cd49447}.auth-submit:disabled{opacity:.7;cursor:wait}.auth-spinner{animation:.8s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-switch{color:#ffffff94;justify-content:center;align-items:center;gap:6px;margin-top:20px;font-size:11px;display:flex}.auth-switch button{color:#5cd494;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:750}.auth-switch button:hover{text-decoration:underline}.pattern-panel{background:#f4ede4;min-height:100dvh;position:relative;overflow:hidden}.pattern-panel img{object-fit:contain;padding:clamp(16px,2.5vw,38px)}@media (max-width:840px){.login-page{background:#3a1b4e;flex-direction:column;width:100%;height:100dvh;min-height:0;padding:0;display:flex;overflow:hidden}.auth-panel{min-height:0;padding:calc(env(safe-area-inset-top,0px) + 108px) 22px 28px;border-radius:0;flex:auto;overflow:hidden}.auth-logo{top:calc(env(safe-area-inset-top,0px) + 34px);width:152px;left:50%;transform:translate(-50%)}.auth-content{max-width:430px}.pattern-panel{background:#3a1b4e;flex:0 0 190px;min-height:190px;display:block}.pattern-panel img{object-fit:cover;object-position:top center;padding:0}.register-mode .auth-panel{padding-top:calc(env(safe-area-inset-top,0px) + 96px);padding-bottom:18px}.register-mode .auth-header{margin-bottom:17px}.register-mode .auth-form{gap:9px}.register-mode .auth-switch{margin-top:12px}.register-mode .pattern-panel{flex-basis:105px;min-height:105px}}@media (max-width:430px){.auth-panel{align-items:flex-start;padding-inline:18px}.auth-logo{width:152px;left:50%;transform:translate(-50%)}.auth-header{margin-bottom:23px}.auth-header h1{font-size:27px}.auth-switch{flex-direction:column;gap:4px}}@media (max-width:840px) and (max-height:700px){.auth-panel{padding-top:calc(env(safe-area-inset-top,0px) + 94px);padding-bottom:20px}.auth-logo{top:calc(env(safe-area-inset-top,0px) + 26px);width:144px}.auth-header{margin-bottom:18px}.auth-header h1{font-size:25px}.auth-form{gap:10px}.auth-switch{margin-top:13px}.pattern-panel{flex-basis:150px;min-height:150px}.register-mode .auth-panel{padding-top:calc(env(safe-area-inset-top,0px) + 82px);padding-bottom:12px}.register-mode .auth-logo{top:calc(env(safe-area-inset-top,0px) + 20px);width:132px}.register-mode .auth-header{margin-bottom:11px}.register-mode .auth-header p{font-size:11px}.register-mode .auth-form{gap:6px}.register-mode .auth-switch{margin-top:8px}.register-mode .pattern-panel{flex-basis:72px;min-height:72px}}@media (max-height:700px) and (min-width:841px){.auth-panel{padding-top:68px;padding-bottom:28px}.auth-logo{top:24px}.auth-header{margin-bottom:18px}.auth-form{gap:9px}.auth-switch{margin-top:13px}}
