.v2-login-shell{position:relative;min-height:100vh;display:grid;place-items:center;overflow:hidden;padding:var(--v2-space-6);background:radial-gradient(circle at 12% 16%,rgba(124,60,255,.2),transparent 24%),radial-gradient(circle at 84% 20%,rgba(38,117,255,.18),transparent 20%),radial-gradient(circle at 78% 82%,rgba(223,55,223,.14),transparent 18%),linear-gradient(180deg,#f7f3ff,#eef2ff 52%,#f5f6fb)}.v2-login-shell:before,.v2-login-shell:after{position:absolute;content:"";pointer-events:none;border-radius:999px;filter:blur(18px)}.v2-login-shell:before{top:-80px;left:-30px;width:260px;height:260px;background:#7c3cff29}.v2-login-shell:after{right:-48px;bottom:-64px;width:240px;height:240px;background:#2675ff29}.v2-login-stage{position:relative;z-index:1;width:min(100%,428px)}.v2-login-form-panel{position:relative;display:grid;gap:var(--v2-space-6);overflow:hidden;padding:var(--v2-space-8);background:#fffffff5;border:1px solid rgba(215,222,235,.92);border-radius:22px;box-shadow:0 26px 56px #1c26441f,0 8px 18px #1c26440f}.v2-login-form-panel:before{position:absolute;inset:0 0 auto;height:5px;content:"";background:linear-gradient(90deg,var(--v2-color-purple),var(--v2-color-primary),var(--v2-color-blue))}.v2-login-form-panel:after{position:absolute;top:18px;right:18px;width:120px;height:120px;content:"";border-radius:50%;background:radial-gradient(circle,#7c3cff24,#7c3cff00 68%);pointer-events:none}.v2-login-form-head{display:grid;gap:var(--v2-space-4)}.v2-login-brand-mark{position:relative;display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;color:#fff;background:linear-gradient(135deg,var(--v2-color-primary-strong) 0%,var(--v2-color-blue) 100%);border-radius:18px;box-shadow:0 16px 30px #7c3cff38}.v2-login-brand-mark span,.v2-login-brand-mark:before{position:absolute;content:"";width:28px;height:7px;border-radius:999px;background:currentColor}.v2-login-brand-mark:before{transform:rotate(90deg)}.v2-login-eyebrow{margin:0 0 var(--v2-space-2);color:var(--v2-color-primary-strong);font-size:var(--v2-font-size-xs);font-weight:900;letter-spacing:.04em}.v2-login-brand-title{margin:0;color:var(--v2-color-text);font-size:38px;font-weight:900;line-height:1.04}.v2-login-form-copy,.v2-login-message{margin:0;color:var(--v2-color-text-muted);font-size:var(--v2-font-size-md)}.v2-login-form{display:grid;gap:var(--v2-space-4)}.v2-login-field{display:grid;gap:var(--v2-space-2)}.v2-login-field span{color:var(--v2-color-text-muted);font-size:var(--v2-font-size-sm);font-weight:900}.v2-login-field input{width:100%;min-height:52px;padding:0 var(--v2-space-4);color:var(--v2-color-text);background:linear-gradient(180deg,#fff,#fbfbff);border:1px solid rgba(215,222,235,1);border-radius:12px;outline:none;transition:border-color var(--v2-transition),box-shadow var(--v2-transition),background-color var(--v2-transition)}.v2-login-field input::placeholder{color:#8d97ad}.v2-login-field input:focus{border-color:var(--v2-color-primary);box-shadow:0 0 0 4px #7c3cff1f;background:#fff}.v2-login-submit{width:100%;min-height:52px;justify-content:center;border:none;background:linear-gradient(135deg,var(--v2-color-purple) 0%,var(--v2-color-blue) 100%);box-shadow:0 16px 30px #7c3cff38}.v2-login-submit:hover{filter:brightness(1.03)}.v2-login-enter-link{width:100%;justify-content:center;color:var(--v2-color-primary-strong);background:var(--v2-color-primary-soft);border:1px solid rgba(124,60,255,.14);font-weight:900}.v2-login-submit-spinner{display:none;width:16px;height:16px;border:2px solid rgba(255,255,255,.36);border-top-color:#fff;border-radius:50%;animation:v2LoginSpin .8s linear infinite}.v2-login-submit.is-loading .v2-login-submit-spinner{display:inline-flex}.v2-login-submit.is-loading{cursor:wait}.v2-login-message{min-height:22px;font-size:var(--v2-font-size-sm);font-weight:800}.v2-login-message.is-error{color:var(--v2-color-danger)}.v2-login-message.is-success{color:var(--v2-color-success)}.v2-login-message.is-loading{color:var(--v2-color-primary-strong)}@keyframes v2LoginSpin{to{transform:rotate(360deg)}}@media(max-width:640px){.v2-login-shell{padding:var(--v2-space-4)}.v2-login-form-panel{padding:var(--v2-space-6);border-radius:18px}.v2-login-brand-title{font-size:32px}}
