.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 22px;background:radial-gradient(circle at 18% 8%,rgba(134,160,229,.18),transparent 45%),radial-gradient(circle at 95% 110%,rgba(0,51,80,.08),transparent 55%),var(--color-surface-2)}.auth-card{width:100%;max-width:420px;background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:18px;padding:36px 36px 28px;box-shadow:var(--shadow-md)}.auth-card-wide{max-width:560px}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.auth-brand .brand-mark{width:36px;height:36px;border-radius:10px;background:var(--color-brand-primary);color:#FFFFFF;display:inline-flex;align-items:center;justify-content:center}.auth-brand .brand-mark svg{width:20px;height:20px}.auth-brand .brand-text{display:flex;flex-direction:column;line-height:1}.auth-brand .brand-text .name{font-weight:700;font-size:16px;color:var(--color-brand-primary);letter-spacing:-.01em}.auth-brand .brand-text .sub{font-size:11px;color:var(--color-text-tertiary);margin-top:4px;letter-spacing:.08em;text-transform:uppercase;font-weight:500}.auth-title{margin:0 0 6px;font-size:26px;font-weight:500;color:var(--color-brand-primary);letter-spacing:-.01em}.auth-sub{margin:0 0 24px;font-size:14px;color:var(--color-text-tertiary)}.auth-form{display:flex;flex-direction:column;gap:var(--s-5)}.auth-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-5)}.auth-field{display:flex;flex-direction:column;gap:var(--s-3)}.auth-field>span{font-size:var(--t-meta);color:var(--muted);font-weight:var(--w-medium)}.auth-field input,.auth-field select{border:1px solid var(--line-deep);border-radius:var(--r-control);padding:var(--pad-input);font-family:inherit;font-size:var(--t-control);color:var(--ink);background:var(--canvas);transition:border-color var(--dur-fast) var(--ease)}.auth-field input:focus,.auth-field select:focus{border-color:var(--action)}.auth-error{color:var(--text-urgent);background:var(--urgent-tint);border:1px solid var(--urgent-line);border-radius:var(--r-sm)}.auth-banner,.auth-error{font-size:var(--t-meta);padding:var(--s-4) var(--s-5);line-height:1.5}.auth-banner{color:var(--text-attention);background:var(--attention-tint);border:1px solid var(--attention-line);border-radius:var(--r-sm)}.auth-submit{margin-top:var(--s-3);background:var(--action);color:var(--text-on-action);border:0;border-radius:var(--r-control);padding:var(--s-5) var(--s-6);font-family:inherit;font-size:var(--t-control);font-weight:var(--w-medium);cursor:pointer;transition:background var(--dur-fast) var(--ease)}.auth-submit:hover:not(:disabled){background:var(--action-hover)}.auth-submit:disabled{background:var(--faint);cursor:not-allowed}.auth-foot{margin-top:var(--s-8);text-align:center;font-size:var(--t-body);color:var(--muted)}.auth-link{color:var(--text-action);font-weight:var(--w-medium);text-decoration:none}.auth-link:hover{text-decoration:underline}.auth-link-button{background:none;border:0;padding:0;margin:0;font:inherit;font-size:var(--t-body);color:var(--text-action);font-weight:var(--w-medium);cursor:pointer;text-decoration:none}.auth-link-button:hover:not(:disabled){text-decoration:underline}.auth-link-button:disabled{color:var(--muted);cursor:not-allowed}.auth-phone-line{display:flex;align-items:center;justify-content:space-between;gap:var(--s-5);font-size:var(--t-body);color:var(--muted)}.auth-phone-line .phone-value{font-weight:var(--w-medium);color:var(--ink);font-family:var(--font-num)}.auth-step-title{margin:0;font-size:var(--t-lead);font-weight:var(--w-semibold);color:var(--ink)}.auth-step-note{margin:calc(var(--s-4) * -1) 0 0;font-size:var(--t-body);color:var(--muted)}