.login-page{background-color:var(--bg-base);justify-content:center;align-items:center;min-height:100vh;padding:32px 24px;transition:background-color .25s;display:flex;position:relative;overflow:hidden}.login-page__overlay{background-color:var(--text-primary);z-index:9999;pointer-events:none;clip-path:circle(0% at var(--origin-x,50%) var(--origin-y,50%));transition:clip-path .65s cubic-bezier(.4,0,.2,1);position:fixed;inset:0}.login-page__overlay--expanding{clip-path:circle(200% at var(--origin-x,50%) var(--origin-y,50%))}.login-card{z-index:1;width:100%;max-width:360px;position:relative}.login-card__brand{justify-content:center;align-items:center;gap:10px;margin-bottom:40px;display:flex}.login-card__logo{background:var(--text-primary);width:36px;height:36px;color:var(--text-inverse);letter-spacing:-.5px;border-radius:9px;justify-content:center;align-items:center;font-size:16px;font-weight:800;transition:background-color .25s,color .25s;display:flex}.login-card__brand-name{color:var(--text-primary);letter-spacing:-.2px;font-size:17px;font-weight:700;transition:color .25s}.login-card__title{color:var(--text-primary);letter-spacing:-.5px;text-align:center;margin-bottom:6px;font-size:24px;font-weight:700;transition:color .25s}.login-card__subtitle{color:var(--text-muted);text-align:center;margin-bottom:32px;font-size:13.5px;line-height:1.5;transition:color .25s}.login-form{flex-direction:column;gap:16px;display:flex}.login-form__group{flex-direction:column;gap:7px;display:flex}.login-form__label{color:var(--text-primary);font-size:13px;font-weight:500;transition:color .25s}.login-form__field{border:1px solid var(--border);background:var(--bg-subtle);border-radius:9px;align-items:center;gap:10px;height:44px;padding:0 13px;transition:border-color .15s,box-shadow .15s,background-color .25s;display:flex}.login-form__field:focus-within{border-color:var(--text-primary);background-color:var(--bg-base);box-shadow:0 0 0 3px var(--focus-ring)}.login-form__field-icon{color:var(--text-muted);flex-shrink:0;transition:color .15s}.login-form__field:focus-within .login-form__field-icon{color:var(--text-secondary)}.login-form__input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;height:100%;font-size:14px;transition:color .25s}.login-form__input::placeholder{color:var(--text-muted);font-size:13.5px}.login-form__eye{cursor:pointer;color:var(--text-muted);background:0 0;border:none;flex-shrink:0;align-items:center;padding:0;transition:color .15s;display:flex}.login-form__eye:hover{color:var(--text-secondary)}.login-form__meta{justify-content:space-between;align-items:center;display:flex}.login-form__remember{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:7px;font-size:13px;transition:color .25s;display:flex}.login-form__remember input[type=checkbox]{width:14px;height:14px;accent-color:var(--text-primary);cursor:pointer}.login-form__forgot{color:var(--text-secondary);font-size:13px;text-decoration:none;transition:color .15s}.login-form__forgot:hover{color:var(--text-primary);text-decoration:underline}.login-form__btn{background:var(--text-primary);width:100%;height:44px;color:var(--text-inverse);cursor:pointer;border:none;border-radius:9px;justify-content:center;align-items:center;gap:8px;margin-top:4px;font-size:14px;font-weight:600;transition:opacity .15s,transform .1s,background-color .25s,color .25s;display:flex;position:relative;overflow:hidden}.login-form__btn:after{content:"";background:linear-gradient(90deg,#0000,#ffffff1a,#0000);width:60%;height:100%;transition:left .4s;position:absolute;top:0;left:-100%}.login-form__btn:hover:after{left:150%}.login-form__btn:hover:not(:disabled){opacity:.85}.login-form__btn:active:not(:disabled){transform:scale(.98)}.login-form__btn:disabled{opacity:.45;cursor:not-allowed}.login-form__error{background:var(--bg-subtle);border:1px solid var(--border-strong);color:var(--color-danger);border-radius:9px;align-items:flex-start;gap:8px;padding:11px 13px;font-size:13px;line-height:1.4;transition:background-color .25s,border-color .25s;display:flex}.login-form__divider{color:var(--text-muted);align-items:center;gap:12px;font-size:12px;transition:color .25s;display:flex}.login-form__divider:before,.login-form__divider:after{content:"";background:var(--border);flex:1;height:1px;transition:background-color .25s}.login-demo{background:var(--bg-subtle);border:1px solid var(--border);cursor:pointer;text-align:left;border-radius:9px;justify-content:space-between;align-items:center;width:100%;padding:11px 14px;transition:background-color .15s,border-color .25s;display:flex}.login-demo:hover{background-color:var(--bg-muted)}.login-demo__label{color:var(--text-muted);margin-bottom:3px;font-size:11px;transition:color .25s}.login-demo__creds{color:var(--text-primary);font-family:ui-monospace,SF Mono,monospace;font-size:13px;font-weight:500;transition:color .25s}.login-demo__arrow{color:var(--text-muted);flex-shrink:0;transition:color .15s,transform .15s}.login-demo:hover .login-demo__arrow{color:var(--text-primary);transform:translate(3px)}.login-card__footer{color:var(--text-muted);text-align:center;margin-top:28px;font-size:12px;transition:color .25s}.login-form__spinner{border:2px solid #ffffff4d;border-top-color:var(--text-inverse);border-radius:50%;flex-shrink:0;width:15px;height:15px;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-google-btn{justify-content:center;width:100%;min-height:44px;display:flex}.login-google-btn>div,.login-google-btn iframe{width:100%!important}
