.sso-page[data-v-9db10304]{min-height:100vh;background:linear-gradient(135deg,#0d3c8a,#1565c0 40%,#1976d2 70%,#2196f3);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:32px 16px;position:relative;overflow:hidden}.bg-decoration[data-v-9db10304]{position:absolute;inset:0;pointer-events:none}.bg-circle[data-v-9db10304]{position:absolute;border-radius:50%;opacity:.08;background:#fff}.bg-circle-1[data-v-9db10304]{width:520px;height:520px;top:-180px;right:-120px}.bg-circle-2[data-v-9db10304]{width:360px;height:360px;bottom:-100px;left:-80px}.bg-circle-3[data-v-9db10304]{width:200px;height:200px;top:40%;left:10%}.sso-container[data-v-9db10304]{position:relative;z-index:1;width:100%;max-width:480px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.sso-header[data-v-9db10304]{text-align:center;margin-bottom:32px;color:#fff}.sso-logo[data-v-9db10304]{width:72px;height:72px;background:hsla(0,0%,100%,.15);border:2px solid hsla(0,0%,100%,.3);border-radius:20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:0 auto 16px;backdrop-filter:blur(8px);font-size:34px;color:#fff}.sso-title[data-v-9db10304]{font-size:24px;font-weight:700;color:#fff;letter-spacing:2px;margin:0 0 6px}.sso-subtitle[data-v-9db10304]{font-size:12px;color:hsla(0,0%,100%,.65);letter-spacing:1px;margin:0}.sso-card[data-v-9db10304]{width:100%;background:#fff;border-radius:16px;-webkit-box-shadow:0 20px 60px rgba(21,101,192,.15),0 4px 20px rgba(0,0,0,.08);box-shadow:0 20px 60px rgba(21,101,192,.15),0 4px 20px rgba(0,0,0,.08);overflow:hidden}.card-header[data-v-9db10304]{gap:14px;padding:24px 28px 20px;background:linear-gradient(135deg,#f0f5ff,#e8f0fe)}.card-header[data-v-9db10304],.user-avatar[data-v-9db10304]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.user-avatar[data-v-9db10304]{width:52px;height:52px;min-width:52px;border-radius:50%;background:linear-gradient(135deg,#1890ff,#1565c0);-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:24px;color:#fff;-webkit-box-shadow:0 4px 12px rgba(24,144,255,.35);box-shadow:0 4px 12px rgba(24,144,255,.35)}.user-name[data-v-9db10304]{font-size:17px;font-weight:600;color:#1a2235;line-height:1.4}.user-phone[data-v-9db10304]{font-size:13px;color:#6b7a99;margin-top:2px}.card-divider[data-v-9db10304]{height:1px;background:#e8edf5;margin:0 28px}.card-body[data-v-9db10304]{padding:20px 28px 8px}.role-label[data-v-9db10304]{font-size:13px;color:#6b7a99;margin-bottom:16px;line-height:1.6}.role-empty[data-v-9db10304]{padding:24px 0}.role-list[data-v-9db10304]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:10px}.role-item[data-v-9db10304]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:14px;padding:14px 16px;border:1.5px solid #e8edf5;border-radius:12px;cursor:pointer;-webkit-transition:all .2s ease;transition:all .2s ease;background:#fff}.role-item[data-v-9db10304]:hover{border-color:#1890ff;background:#f5f8ff;-webkit-box-shadow:0 2px 10px rgba(24,144,255,.1);box-shadow:0 2px 10px rgba(24,144,255,.1);-webkit-transform:translateY(-1px);transform:translateY(-1px)}.role-item.is-selected[data-v-9db10304]{border-color:#1890ff;background:#e8f1ff;-webkit-box-shadow:0 2px 12px rgba(24,144,255,.18);box-shadow:0 2px 12px rgba(24,144,255,.18)}.role-item.is-selected .role-index[data-v-9db10304]{background:#1890ff;color:#fff}.role-item.is-selected .role-name[data-v-9db10304]{color:#1890ff;font-weight:600}.role-item.is-selected .check-circle[data-v-9db10304]{border-color:#1890ff;background:#1890ff;color:#fff}.role-index[data-v-9db10304]{width:28px;height:28px;min-width:28px;border-radius:8px;background:#f0f2f5;color:#6b7a99;font-size:13px;font-weight:600;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transition:all .2s;transition:all .2s}.role-content[data-v-9db10304]{-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:0}.role-name[data-v-9db10304]{font-size:15px;color:#1a2235;font-weight:500;-webkit-transition:color .2s;transition:color .2s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.role-desc[data-v-9db10304]{font-size:12px;color:#6b7a99;margin-top:2px}.check-circle[data-v-9db10304]{width:22px;height:22px;min-width:22px;border-radius:50%;border:1.5px solid #e8edf5;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:11px;-webkit-transition:all .2s;transition:all .2s}.card-footer[data-v-9db10304]{padding:20px 28px 28px}.confirm-btn[data-v-9db10304]{height:48px;font-size:16px;font-weight:600;border-radius:10px;letter-spacing:1px;background:linear-gradient(135deg,#1890ff,#1565c0);border:none;-webkit-box-shadow:0 6px 20px rgba(21,101,192,.35);box-shadow:0 6px 20px rgba(21,101,192,.35);-webkit-transition:all .25s ease;transition:all .25s ease}.confirm-btn[data-v-9db10304]:hover:not(:disabled){background:linear-gradient(135deg,#40a9ff,#1565c0);-webkit-box-shadow:0 8px 24px rgba(21,101,192,.45);box-shadow:0 8px 24px rgba(21,101,192,.45);-webkit-transform:translateY(-1px);transform:translateY(-1px)}.confirm-btn[data-v-9db10304]:active:not(:disabled){-webkit-transform:translateY(0);transform:translateY(0);-webkit-box-shadow:0 4px 14px rgba(21,101,192,.3);box-shadow:0 4px 14px rgba(21,101,192,.3)}.sso-footer-text[data-v-9db10304]{margin-top:24px;font-size:12px;color:hsla(0,0%,100%,.5);text-align:center;letter-spacing:.5px}