From adac18ba86a00652d008a402c8114b3306d8b6e6 Mon Sep 17 00:00:00 2001 From: Your Name Date: Sat, 23 May 2026 10:57:26 +0800 Subject: [PATCH] Polish DingTalk callback screen --- public/dingtalk-callback.html | 128 +++++++++++++++++++++++++++------- 1 file changed, 101 insertions(+), 27 deletions(-) diff --git a/public/dingtalk-callback.html b/public/dingtalk-callback.html index aca7785b5..8e6d92ff8 100644 --- a/public/dingtalk-callback.html +++ b/public/dingtalk-callback.html @@ -12,71 +12,145 @@ } body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; - background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + background: + linear-gradient(180deg, rgba(250, 250, 250, 0.96) 0%, rgba(255, 255, 255, 1) 52%), + radial-gradient(circle at top center, rgba(0, 145, 255, 0.08), transparent 38%); min-height: 100vh; display: flex; align-items: center; justify-content: center; - color: #fff; + color: #171717; + letter-spacing: 0; } .container { text-align: center; - padding: 40px; - background: rgba(255, 255, 255, 0.1); - border-radius: 16px; - backdrop-filter: blur(10px); - max-width: 400px; + padding: 36px 34px 32px; + background: #ffffff; + border-radius: 12px; + box-shadow: + rgba(0, 0, 0, 0.08) 0 0 0 1px, + rgba(0, 0, 0, 0.04) 0 2px 2px, + rgba(0, 0, 0, 0.04) 0 16px 32px -20px; + max-width: 420px; width: 90%; } + .brand-mark { + width: 42px; + height: 42px; + border-radius: 10px; + margin: 0 auto 22px; + display: flex; + align-items: center; + justify-content: center; + background: #171717; + color: #ffffff; + font-size: 18px; + font-weight: 700; + line-height: 1; + box-shadow: rgba(0, 0, 0, 0.08) 0 0 0 1px; + } .loading-spinner { - width: 50px; - height: 50px; - border: 4px solid rgba(255, 255, 255, 0.3); - border-top: 4px solid #fff; + width: 34px; + height: 34px; + border: 2px solid #ededed; + border-top-color: #171717; border-radius: 50%; - animation: spin 1s linear infinite; - margin: 0 auto 20px; + animation: spin 0.9s linear infinite; + margin: 0 auto 18px; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .status-text { - font-size: 18px; - margin-bottom: 10px; + color: #171717; + font-size: 17px; + font-weight: 600; + line-height: 1.5; + margin-bottom: 8px; + } + .hint-text { + color: #666666; + font-size: 13px; + line-height: 1.7; + } + .status-row { + display: inline-flex; + align-items: center; + gap: 8px; + margin-top: 18px; + padding: 5px 10px; + border-radius: 999px; + background: #f5f5f5; + color: #666666; + font-size: 12px; + line-height: 1.4; + box-shadow: rgb(235, 235, 235) 0 0 0 1px; + } + .status-dot { + width: 6px; + height: 6px; + border-radius: 50%; + background: #0a72ef; + box-shadow: 0 0 0 4px rgba(10, 114, 239, 0.12); } .error-container { display: none; } .error-title { - font-size: 18px; - color: #ff6b6b; - margin-bottom: 20px; + color: #b42318; + font-size: 15px; + font-weight: 500; + line-height: 1.7; + margin-bottom: 22px; word-break: break-word; } .back-button { - padding: 12px 24px; - font-size: 16px; + min-height: 38px; + padding: 0 16px; + font-size: 14px; + font-weight: 500; cursor: pointer; - background: rgba(255, 255, 255, 0.2); - color: white; - border: 1px solid rgba(255, 255, 255, 0.3); - border-radius: 8px; - transition: all 0.3s ease; - header: 1px solid rgba(255, 255, 255, 0.3); + background: #171717; + color: #ffffff; + border: 0; + border-radius: 6px; + transition: background-color 0.18s ease, transform 0.18s ease; } .back-button:hover { - background: rgba(255, 255, 255, 0.3); + background: #000000; + transform: translateY(-1px); + } + .back-button:focus-visible { + outline: 2px solid #0a72ef; + outline-offset: 2px; + } + @media (max-width: 520px) { + body { + align-items: flex-start; + padding-top: 26vh; + } + .container { + padding: 32px 24px 28px; + width: calc(100% - 32px); + } }
+
AI

正在登录...

+

正在通过钉钉确认企业身份,完成后会自动回到工作台。

+
+ + 安全连接已建立 +
+
AI