.auth-modal-backdrop[data-v-7fd15561]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#00000073;display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn-7fd15561 .2s ease}@keyframes fadeIn-7fd15561{0%{opacity:0}to{opacity:1}}.auth-modal[data-v-7fd15561]{position:relative;background:#fff;border-radius:12px;width:100%;max-width:420px;max-height:90vh;overflow-y:auto;padding:28px 28px 24px;box-shadow:0 12px 40px #00000026;animation:slideUp-7fd15561 .25s ease}@keyframes slideUp-7fd15561{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.close-btn[data-v-7fd15561]{position:absolute;top:12px;right:14px;border:none;background:none;font-size:24px;color:#999;cursor:pointer;line-height:1;padding:4px 8px}.close-btn[data-v-7fd15561]:hover{color:#333}.modal-header[data-v-7fd15561]{text-align:center;margin-bottom:20px}.mascot-hint[data-v-7fd15561]{font-size:12px;color:#1677ff;margin:0 0 8px}.modal-header h2[data-v-7fd15561]{margin:0 0 8px;font-size:20px;color:#1a1a1a}.subtitle[data-v-7fd15561]{margin:0;font-size:13px;color:#888;line-height:1.5}.tabs[data-v-7fd15561]{display:flex;border-bottom:1px solid #f0f0f0;margin-bottom:20px}.tabs button[data-v-7fd15561]{flex:1;padding:10px 0;border:none;background:none;font-size:15px;color:#666;cursor:pointer;position:relative}.tabs button.active[data-v-7fd15561]{color:#1a1a1a;font-weight:600}.tabs button.active[data-v-7fd15561]:after{content:"";position:absolute;bottom:-1px;left:20%;right:20%;height:2px;background:#1a1a1a;border-radius:1px}.field[data-v-7fd15561]{margin-bottom:12px}.field input[data-v-7fd15561]{width:100%;padding:12px 14px;border:1px solid #e8e8e8;border-radius:8px;font-size:14px;box-sizing:border-box;transition:border-color .2s}.field input[data-v-7fd15561]:focus{outline:none;border-color:#1677ff}.otp-row[data-v-7fd15561]{display:flex;gap:8px}.otp-row input[data-v-7fd15561]{flex:1}.otp-btn[data-v-7fd15561]{flex-shrink:0;min-width:108px;padding:0 12px;border:1px solid #1677ff;background:#fff;color:#1677ff;border-radius:8px;font-size:13px;cursor:pointer;white-space:nowrap}.otp-btn[data-v-7fd15561]:disabled{border-color:#d9d9d9;color:#999;cursor:not-allowed}.hint[data-v-7fd15561]{font-size:12px;color:#52c41a;margin:-4px 0 12px}.hint.build-otp[data-v-7fd15561]{color:#d48806;background:#fffbe6;padding:8px 10px;border-radius:6px;border:1px solid #ffe58f}.hint.build-otp strong[data-v-7fd15561]{font-size:18px;letter-spacing:2px;color:#1677ff}.guest-section[data-v-7fd15561]{margin-top:16px;padding-top:16px;border-top:1px dashed #e8e8e8;text-align:center}.guest-btn[data-v-7fd15561]{width:100%;padding:10px;border:1px dashed #1677ff;background:#f0f5ff;color:#1677ff;border-radius:8px;cursor:pointer;font-size:14px}.guest-btn[data-v-7fd15561]:disabled{opacity:.5}.guest-hint[data-v-7fd15561]{font-size:11px;color:#999;margin:8px 0 0}.checkbox[data-v-7fd15561]{display:flex;gap:8px;font-size:12px;color:#666;margin-bottom:14px;align-items:flex-start;line-height:1.5}.checkbox input[data-v-7fd15561]{margin-top:3px;flex-shrink:0}.primary-btn[data-v-7fd15561]{width:100%;padding:12px;background:#1677ff;color:#fff;border:none;border-radius:8px;font-size:16px;cursor:pointer}.primary-btn[data-v-7fd15561]:disabled{opacity:.55;cursor:not-allowed}.error[data-v-7fd15561]{color:#ff4d4f;font-size:13px;margin:0 0 10px}.oauth-section[data-v-7fd15561]{margin-top:24px;padding-top:20px;border-top:1px solid #f5f5f5}.oauth-label[data-v-7fd15561]{text-align:center;font-size:13px;color:#999;margin:0 0 14px}.oauth-row[data-v-7fd15561]{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.oauth-btn[data-v-7fd15561]{display:flex;flex-direction:column;align-items:center;gap:4px;border:none;background:none;cursor:pointer;padding:4px;min-width:56px}.oauth-btn[data-v-7fd15561]:disabled{opacity:.5;cursor:not-allowed}.oauth-icon[data-v-7fd15561]{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700}.oauth-name[data-v-7fd15561]{font-size:11px;color:#666}.oauth-hint[data-v-7fd15561]{text-align:center;font-size:11px;color:#bbb;margin:12px 0 0}.switch-mode[data-v-7fd15561]{text-align:center;margin:16px 0 0;font-size:14px;color:#666}.link-btn[data-v-7fd15561]{border:none;background:none;color:#1677ff;cursor:pointer;font-size:14px;padding:0}:root{--g-primary: #4361ee;--g-primary-dark: #3a56d4;--g-primary-light: #eef2ff;--g-accent: #7c3aed;--g-success: #10b981;--g-warning: #f59e0b;--g-danger: #ef4444;--g-bg: #f0f4ff;--g-bg-gradient: linear-gradient(135deg, #eef2ff 0%, #f8fafc 45%, #f0fdf4 100%);--g-surface: #ffffff;--g-text: #1e293b;--g-text-muted: #64748b;--g-border: rgba(148, 163, 184, .25);--g-radius: 16px;--g-radius-sm: 10px;--g-shadow-sm: 0 2px 8px rgba(15, 23, 42, .06);--g-shadow: 0 8px 32px rgba(15, 23, 42, .08), 0 2px 8px rgba(15, 23, 42, .04);--g-shadow-lg: 0 16px 48px rgba(67, 97, 238, .12), 0 4px 16px rgba(15, 23, 42, .06);--g-shadow-hover: 0 20px 40px rgba(67, 97, 238, .15), 0 8px 16px rgba(15, 23, 42, .08);--g-transition: .25s cubic-bezier(.4, 0, .2, 1)}.card-elevated{background:var(--g-surface);border-radius:var(--g-radius);border:1px solid var(--g-border);box-shadow:var(--g-shadow);transition:transform var(--g-transition),box-shadow var(--g-transition)}.card-elevated:hover{box-shadow:var(--g-shadow-lg)}.card-elevated.interactive:hover{transform:translateY(-3px);box-shadow:var(--g-shadow-hover)}.btn-glow{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border:none;border-radius:var(--g-radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:all var(--g-transition);background:linear-gradient(135deg,var(--g-primary) 0%,var(--g-accent) 100%);color:#fff;box-shadow:0 4px 14px #4361ee59}.btn-glow:hover{transform:translateY(-2px);box-shadow:0 8px 24px #4361ee73}.btn-glow:active{transform:translateY(0)}.btn-ghost{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--g-radius-sm);border:1px solid var(--g-border);background:var(--g-surface);color:var(--g-text);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--g-transition);box-shadow:var(--g-shadow-sm)}.btn-ghost:hover{border-color:var(--g-primary);color:var(--g-primary);box-shadow:var(--g-shadow);transform:translateY(-1px)}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif;color:var(--g-text, #1e293b);background:var(--g-bg, #f0f4ff)}#app{min-height:100vh}a{color:var(--g-primary, #4361ee);text-decoration:none}
