*{scrollbar-width:thin;scrollbar-color:#2ee09e #162340}html,body{background-color:#0f1d37}*::-webkit-scrollbar{width:10px;height:10px;background:transparent}*::-webkit-scrollbar-track{background:#162340;border-radius:8px}*::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#253a5c 60%,#1b2b4e);border-radius:8px;border:2px solid #1b2b4e}*::-webkit-scrollbar-thumb:hover{background:#2ee09e;border-color:#253a5c}*::-webkit-scrollbar-corner{background:#162340}:where(button,a,[role=button],[routerLink],input[type=button],input[type=submit],input[type=reset],summary,select,label[for],.clickable,[class*=btn]){cursor:pointer}:where(button:disabled,input:disabled,select:disabled,textarea:disabled,[aria-disabled=true],.disabled){cursor:not-allowed}:root{--auth-ink: #1e293b;--auth-ink-soft: #64748b;--auth-ink-faint: #94a3b8;--auth-accent: #14b8a6;--auth-primary-from: #4f7cf6;--auth-primary-to: #7c5cf6;--auth-border: #e6e8ef;--auth-bg: #eef1f8}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 20px;box-sizing:border-box;font-family:Segoe UI,system-ui,-apple-system,sans-serif;color:var(--auth-ink);background:radial-gradient(circle at 18% 22%,rgba(124,92,246,.08),transparent 42%),radial-gradient(circle at 82% 78%,rgba(20,184,166,.08),transparent 42%),var(--auth-bg)}.auth-card{width:100%;max-width:920px;background:#fff;border-radius:22px;box-shadow:0 30px 70px #0f172a29;display:grid;grid-template-columns:1fr 1.05fr;overflow:hidden}.auth-card--narrow{max-width:460px;grid-template-columns:1fr}.auth-aside{position:relative;padding:40px 34px;display:flex;flex-direction:column;background:radial-gradient(circle at 30% 18%,rgba(124,92,246,.16),transparent 55%),linear-gradient(160deg,#f4f6ff,#eef0ff 45%,#f3f0ff);overflow:hidden}.auth-aside__art{flex:1;display:flex;align-items:center;justify-content:center;min-height:150px;margin:6px 0 22px}.auth-aside__art svg{width:100%;max-width:230px;height:auto}.auth-aside__title{margin:0 0 10px;font-size:24px;font-weight:800;line-height:1.25;color:var(--auth-ink)}.auth-aside__title .accent{color:var(--auth-accent)}.auth-aside__text{margin:0;font-size:14px;line-height:1.6;color:var(--auth-ink-soft)}.auth-aside__trust{margin:22px 0 0;display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--auth-ink-soft)}.auth-aside__trust svg{width:16px;height:16px;flex:none;color:var(--auth-accent)}.auth-main{padding:40px 38px;display:flex;flex-direction:column}.auth-logo{display:flex;align-items:center;gap:10px;margin-bottom:26px}.auth-logo__mark{width:34px;height:34px;flex:none}.auth-logo__text{display:flex;flex-direction:column;line-height:1.05}.auth-logo__name{font-size:18px;font-weight:800;letter-spacing:.3px}.auth-logo__name .alpha{color:var(--auth-ink)}.auth-logo__name .analyzer{color:var(--auth-accent)}.auth-logo__tag{font-size:11px;color:var(--auth-ink-faint);font-weight:600;letter-spacing:.2px}.auth-head{margin-bottom:22px}.auth-head__title{margin:0 0 6px;font-size:24px;font-weight:800;color:var(--auth-ink)}.auth-head__subtitle{margin:0;font-size:14px;color:var(--auth-ink-soft)}.auth-form{display:flex;flex-direction:column}.auth-field{position:relative;margin-bottom:14px}.auth-field__icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--auth-ink-faint);pointer-events:none}.auth-field input{width:100%;box-sizing:border-box;height:46px;padding:0 14px 0 40px;font-size:14px;color:var(--auth-ink);background:#f8fafc;border:1px solid var(--auth-border);border-radius:10px;outline:none;transition:border-color .15s,box-shadow .15s,background .15s}.auth-field input::placeholder{color:var(--auth-ink-faint)}.auth-field input:focus{background:#fff;border-color:var(--auth-primary-from);box-shadow:0 0 0 3px #4f7cf629}.auth-field input.invalid{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261f}.auth-field input.has-toggle{padding-right:44px}.auth-field__toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--auth-ink-faint);border-radius:7px}.auth-field__toggle:hover{color:var(--auth-ink-soft);background:#f1f5f9}.auth-field__toggle svg{width:18px;height:18px}.auth-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 18px}.auth-check{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;color:var(--auth-ink-soft);-webkit-user-select:none;user-select:none}.auth-check input{width:16px;height:16px;accent-color:var(--auth-primary-from)}.auth-link{color:var(--auth-primary-from);font-size:13.5px;font-weight:600;text-decoration:none}.auth-link:hover{text-decoration:underline}.auth-link:focus-visible{outline:3px solid rgba(79,124,246,.35);outline-offset:2px;border-radius:4px}.auth-btn{width:100%;height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:15px;font-weight:700;border-radius:10px;border:1px solid transparent;transition:filter .15s,background .15s,border-color .15s,color .15s,opacity .15s}.auth-btn--primary{color:#fff;background:linear-gradient(90deg,var(--auth-primary-from),var(--auth-primary-to));box-shadow:0 10px 22px #4f7cf647}.auth-btn--primary:hover:not(:disabled){filter:brightness(1.05)}.auth-btn--outline{color:var(--auth-ink);background:#fff;border-color:var(--auth-border)}.auth-btn--outline:hover:not(:disabled){border-color:var(--auth-ink-faint);background:#f8fafc}.auth-btn:disabled{opacity:.65;cursor:not-allowed}.auth-btn:focus-visible{outline:3px solid rgba(79,124,246,.4);outline-offset:2px}.auth-meta{margin:18px 0 0;text-align:center;font-size:13.5px;color:var(--auth-ink-soft)}.auth-alert{margin:0 0 14px;padding:10px 12px;font-size:13px;border-radius:9px;border:1px solid transparent}.auth-alert--error{background:#fef2f2;color:#b91c1c;border-color:#fecaca}.auth-alert--success{background:#ecfdf5;color:#047857;border-color:#a7f3d0}.auth-divider{display:flex;align-items:center;text-align:center;gap:12px;margin:18px 0;color:var(--auth-ink-faint);font-size:12px;font-weight:600}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1px solid var(--auth-border)}.auth-rules{list-style:none;margin:-2px 0 14px;padding:0;display:grid;grid-template-columns:repeat(2,1fr);column-gap:16px;row-gap:3px;font-size:12px;color:var(--auth-ink-soft)}.auth-rules li{position:relative;padding-left:18px}.auth-rules li:before{content:"\25cb";position:absolute;left:2px;color:var(--auth-ink-faint)}.auth-rules li.met{color:#047857}.auth-rules li.met:before{content:"\2713";color:#047857}.auth-steps{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:14px}.auth-step{display:flex;gap:12px;align-items:flex-start}.auth-step__icon{flex:none;width:38px;height:38px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#4f7cf624,#7c5cf624);color:var(--auth-primary-from)}.auth-step__icon svg{width:18px;height:18px}.auth-step__title{margin:0;font-size:14px;font-weight:700;color:var(--auth-ink)}.auth-step__text{margin:2px 0 0;font-size:13px;line-height:1.45;color:var(--auth-ink-soft)}.auth-note{margin:0 0 16px;padding:14px 16px;border:1px solid var(--auth-border);border-radius:12px;background:#f8fafc;text-align:left}.auth-note__title{margin:0 0 4px;font-size:13.5px;font-weight:700;color:var(--auth-ink)}.auth-note__text{margin:0;font-size:13px;line-height:1.5;color:var(--auth-ink-soft)}.auth-note__text a{color:var(--auth-primary-from);font-weight:600;text-decoration:none}.auth-note__text a:hover{text-decoration:underline}.auth-badge{width:92px;height:92px;margin:4px auto 18px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#4f7cf61f,#7c5cf61f);color:var(--auth-primary-from)}.auth-badge svg{width:42px;height:42px}.auth-spacer{flex:1}@media (max-width: 760px){.auth-card{grid-template-columns:1fr;max-width:460px}.auth-aside{padding:26px 28px 22px}.auth-aside__art{display:none}.auth-main{padding:28px 26px 32px}}@media (max-width: 420px){.auth-rules{grid-template-columns:1fr}.auth-row{flex-wrap:wrap}}
