.google-login[data-v-b6647128]{display:flex;flex-direction:column;gap:10px}.choice-btn[data-v-b6647128]{align-items:center;background-color:var(--login-choice-btn-bg);border:1px solid var(--login-choice-btn-border);border-radius:25px;color:var(--color-text-primary);cursor:pointer;display:flex;font-size:var(--font-size-h6);font-weight:var(--font-weight-medium);justify-content:flex-start;padding:12px 20px;position:relative;transition:all .2s ease;width:100%}.choice-btn[data-v-b6647128]:hover{background-color:var(--login-choice-btn-hover-bg);border-color:var(--login-choice-btn-hover-border);box-shadow:0 2px 5px #0000000d}.choice-icon[data-v-b6647128]{flex-shrink:0;height:24px;margin-right:15px;width:24px}.google-fallback-button[data-v-b6647128]{display:flex;justify-content:center}.alert-text[data-v-26a790de]{font-size:var(--font-size-body-sm)}.custom-dropdown[data-v-26a790de]{max-height:300px;overflow-y:auto;width:auto}.animate-fade-in[data-v-26a790de]{animation:fadeIn-26a790de .3s ease-in-out}@keyframes fadeIn-26a790de{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.alert-text[data-v-c4a580eb]{font-size:var(--font-size-body-sm)}.animate-fade-in[data-v-c4a580eb]{animation:fadeIn-c4a580eb .3s ease-in-out}@keyframes fadeIn-c4a580eb{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.alert-text[data-v-1640886f]{font-size:var(--font-size-body-sm)}.wechat-qr-container[data-v-1640886f]{padding:1rem}.qr-code-wrapper[data-v-1640886f]{text-align:center}.qr-code-image[data-v-1640886f]{background-color:var(--qr-code-bg);border:1px solid var(--color-border);border-radius:4px;display:block;height:auto;margin:0 auto;max-width:160px;padding:10px;width:100%}.qr-tip[data-v-1640886f]{color:var(--color-gray-medium)}.qr-status[data-v-1640886f]{color:#09bb07;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);margin-top:.5rem}.animate-fade-in[data-v-1640886f]{animation:fadeIn-1640886f .3s ease-in-out}@keyframes fadeIn-1640886f{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.wechat-oauth-login[data-v-c5405d39]{display:flex;flex-direction:column;justify-content:center;min-height:250px}.error-state[data-v-c5405d39],.init-state[data-v-c5405d39],.polling-state[data-v-c5405d39]{animation:fadeIn-c5405d39 .3s ease}@keyframes fadeIn-c5405d39{0%{opacity:0}to{opacity:1}}.countdown-display[data-v-c5405d39],.status-info[data-v-c5405d39]{margin:0 auto;max-width:400px}.action-buttons[data-v-c5405d39]{display:flex;gap:10px;justify-content:center;margin-top:20px}.alert[data-v-c5405d39]{margin-bottom:0;padding:12px 16px}.alert[data-v-c5405d39],.btn[data-v-c5405d39]{border-radius:var(--radius-md)}.btn[data-v-c5405d39]{font-weight:var(--font-weight-medium);padding:10px 20px;transition:all .2s ease}.btn-success[data-v-c5405d39]{background:linear-gradient(135deg,#07c160,#06a84f);border:none}.btn-success[data-v-c5405d39]:hover:not(:disabled){background:linear-gradient(135deg,#06a84f,#059740);box-shadow:0 4px 12px #07c1604d;transform:translateY(-1px)}.btn-success[data-v-c5405d39]:disabled{cursor:not-allowed;opacity:.6}.btn-outline-info[data-v-c5405d39]{border-color:#0dcaf0;color:#0dcaf0}.btn-outline-info[data-v-c5405d39]:hover{background-color:#0dcaf0;color:#fff}.progress-bar[data-v-c5405d39]{transition:width 1s linear}.card[data-v-c5405d39]{border-radius:var(--radius-md)}.alert-small[data-v-cd01d313]{font-size:var(--font-size-body-sm)}.custom-dropdown[data-v-cd01d313]{max-height:300px;overflow-y:auto;width:auto}.animate-fade-in[data-v-cd01d313]{animation:fadeIn-cd01d313 .3s ease-in-out}@keyframes fadeIn-cd01d313{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.alert-text[data-v-fe94a131]{font-size:var(--font-size-body-sm)}.animate-fade-in[data-v-fe94a131]{animation:fadeIn-fe94a131 .3s ease-in-out}@keyframes fadeIn-fe94a131{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.choice-btn[data-v-972bcef7]{align-items:center;background-color:var(--login-choice-btn-bg);border:1px solid var(--login-choice-btn-border);border-radius:25px;color:var(--color-text-primary);cursor:pointer;display:flex;font-size:var(--font-size-h6);font-weight:var(--font-weight-medium);justify-content:flex-start;padding:12px 20px;position:relative;transition:all .2s ease;width:100%}.choice-btn[data-v-972bcef7]:hover{background-color:var(--login-choice-btn-hover-bg);border-color:var(--login-choice-btn-hover-border);box-shadow:0 2px 5px #0000000d}.choice-icon[data-v-972bcef7]{flex-shrink:0;height:24px;margin-right:15px;width:24px}.login-prompt[data-v-972bcef7]{font-size:var(--font-size-body-sm)}.login-prompt[data-v-972bcef7],.login-subtitle[data-v-972bcef7]{color:var(--color-gray-medium)}.login-subtitle[data-v-972bcef7]{font-size:var(--font-size-body)}.error-alert[data-v-972bcef7]{font-size:var(--font-size-body-sm)}.terms-text[data-v-972bcef7]{font-size:var(--font-size-tiny)}[data-theme=dark] .btn-close[data-v-972bcef7]{filter:invert(1) grayscale(100%) brightness(200%)}.cache-debug-bar[data-v-2f7eaccd]{align-items:center;background:linear-gradient(90deg,#e1f9ebf2,#caf0d6f2);border-top:1px solid rgba(30,122,86,.35);bottom:0;box-shadow:0 8px 16px #0958392e;color:#000;display:flex;flex-wrap:wrap;font-size:12px;gap:8px 14px;left:0;letter-spacing:.01em;line-height:1.35;padding:6px 12px calc(8px + env(safe-area-inset-bottom));position:fixed;right:0;z-index:99999}.cache-debug-collapsed[data-v-2f7eaccd]{border:1px solid rgba(30,122,86,.35);border-radius:8px;bottom:12px;flex-wrap:nowrap;left:auto;max-width:-moz-fit-content;max-width:fit-content;opacity:.75;overflow:hidden;padding:4px 10px calc(4px + env(safe-area-inset-bottom));right:12px}.cache-debug-summary[data-v-2f7eaccd],.cache-debug-toggle[data-v-2f7eaccd]{color:#00000080;font-size:10px}.cache-debug-toggle[data-v-2f7eaccd]{background:none;border:none;cursor:pointer;line-height:1;margin-left:auto;padding:2px 4px;pointer-events:auto}.cache-debug-row[data-v-2f7eaccd]{align-items:center;display:flex;gap:6px;white-space:nowrap}.cache-debug-wide[data-v-2f7eaccd]{flex:1 1 280px;min-width:200px}.cache-debug-label[data-v-2f7eaccd]{color:#0009}.cache-debug-value[data-v-2f7eaccd]{word-break:break-all}.cache-debug-reqs[data-v-2f7eaccd]{align-items:center;display:flex;flex-basis:100%;flex-wrap:wrap;gap:4px 8px}.cache-debug-req-chip[data-v-2f7eaccd]{white-space:nowrap}.cache-debug-status-hit[data-v-2f7eaccd]{color:#0f7a55;font-weight:600}.cache-debug-status-miss[data-v-2f7eaccd]{color:#c44;font-weight:600}.cache-debug-status-bypass[data-v-2f7eaccd]{color:#8a6d00;font-weight:600}.cache-debug-channel-bff[data-v-2f7eaccd]{color:#0f7a55;font-size:10px;font-weight:600}.cache-debug-channel-api[data-v-2f7eaccd]{color:#2563eb;font-size:10px;font-weight:600}.cache-debug-duration[data-v-2f7eaccd]{color:#0006;font-size:10px}
