.modal-overlay[data-v-466cfe67]{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(15,23,42,.4);display:flex;align-items:center;justify-content:center;z-index:9999;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.modal-dialog[data-v-466cfe67]{background:#fff;border:1px solid #e8e9ee;border-radius:var(--radius-lg, 16px);padding:var(--space-2xl, 32px);width:360px;box-shadow:var(--shadow-lg, 0 25px 50px -12px rgba(0, 0, 0, .15));display:flex;flex-direction:column;align-items:center;gap:12px;animation:dialog-pop-466cfe67 .2s cubic-bezier(.34,1.56,.64,1)}@keyframes dialog-pop-466cfe67{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-icon[data-v-466cfe67]{font-size:32px;color:var(--primary, #10b981);line-height:1;margin-bottom:4px}.modal-title[data-v-466cfe67]{font-size:20px;font-weight:700;color:var(--text, #1a1d26);letter-spacing:-.01em}.modal-message[data-v-466cfe67]{font-size:14px;color:var(--text-secondary, #6b7085);text-align:center;line-height:1.6;margin-bottom:8px}.modal-reason[data-v-466cfe67]{font-size:12px;color:var(--text-tertiary, #9ea1b1);text-align:center;line-height:1.5;margin-bottom:8px;padding:6px 12px;background:var(--bg-muted, #f6f7f9);border-radius:8px;max-width:100%;word-break:break-word}.modal-btn[data-v-466cfe67]{padding:10px 32px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;background:var(--primary, #10b981);color:#fff;border:none;transition:opacity .15s;width:100%}.modal-btn[data-v-466cfe67]:hover{opacity:.88}.overlay-fade-enter-active[data-v-466cfe67],.overlay-fade-leave-active[data-v-466cfe67]{transition:opacity .2s ease}.overlay-fade-enter-from[data-v-466cfe67],.overlay-fade-leave-to[data-v-466cfe67]{opacity:0}.notification-container[data-v-7d46448a]{position:fixed;top:var(--space-4, 20px);right:var(--space-4, 20px);z-index:10000;display:flex;flex-direction:column;gap:var(--space-2, 12px);pointer-events:none;max-width:calc(100vw - var(--space-4, 20px) * 2)}.notification-item[data-v-7d46448a]{pointer-events:auto;display:flex;align-items:center;gap:var(--space-2, 12px);min-width:280px;max-width:420px;padding:var(--space-3, 14px) var(--space-4, 18px);background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e8e9ee);border-radius:var(--radius-md, 10px);box-shadow:var(--shadow-md, 0 10px 25px -5px rgba(0, 0, 0, .08));font-size:var(--text-sm, 14px);color:var(--color-text, #1a1d26)}.notification-icon[data-v-7d46448a]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;font-size:12px;font-weight:700;color:#fff}.notification-content[data-v-7d46448a]{flex:1;line-height:1.5;word-break:break-word}.notification-close[data-v-7d46448a]{flex-shrink:0;background:none;border:none;color:var(--color-text-tertiary, #9ca3af);cursor:pointer;font-size:20px;line-height:1;padding:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;transition:all var(--transition-fast, .15s)}.notification-close[data-v-7d46448a]:hover{color:var(--color-text, #1a1d26);background:var(--color-surface-hover, #f6f7fb)}.notification-item--success .notification-icon[data-v-7d46448a]{background:var(--color-success, #10b981)}.notification-item--error .notification-icon[data-v-7d46448a]{background:var(--color-danger, #ef4444)}.notification-item--warning .notification-icon[data-v-7d46448a]{background:var(--color-warning, #f59e0b)}.notification-item--info .notification-icon[data-v-7d46448a]{background:var(--color-info, #6b7280)}.notification-enter-active[data-v-7d46448a],.notification-leave-active[data-v-7d46448a]{transition:all .25s cubic-bezier(.4,0,.2,1)}.notification-enter-from[data-v-7d46448a],.notification-leave-to[data-v-7d46448a]{opacity:0;transform:translate(20px)}.notification-leave-active[data-v-7d46448a]{position:absolute;right:0}:root{--bg: #f7f8fb;--bg-gradient: linear-gradient(165deg, #f7f8fb 0%, #ffffff 50%, #f5f7fa 100%);--surface: #ffffff;--surface-hover: #f3f4f8;--surface-tint: #f9fafb;--text: #1a1d26;--text-secondary: #5f6577;--text-muted: #8b90a0;--sidebar-bg: hsl(160, 45%, 28%);--sidebar-text: hsl(160, 15%, 65%);--sidebar-text-hover: hsl(0, 0%, 100%);--sidebar-active-bg: hsl(160, 50%, 35%);--sidebar-active-text: hsl(0, 0%, 100%);--accent: hsl(160, 75%, 44%);--accent-hover: hsl(160, 75%, 38%);--accent-soft: hsl(160, 60%, 93%);--accent-light: hsl(160, 70%, 68%);--accent-link: hsl(160, 75%, 38%);--primary: hsl(160, 72%, 40%);--primary-hover: hsl(160, 72%, 34%);--primary-foreground: hsl(0, 0%, 100%);--accent-badge: hsl(160, 75%, 44%);--accent-ultra-soft: hsl(160, 60%, 95%);--border: #e2e4ea;--border-light: #eeeff3;--divider: #f0f1f5;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04), 0 1px 3px rgba(0, 0, 0, .03);--shadow-md: 0 2px 8px rgba(0, 0, 0, .06), 0 1px 3px rgba(0, 0, 0, .04);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .06), 0 2px 8px rgba(0, 0, 0, .03);--shadow-focus: 0 0 0 4px hsl(158 50% 92% / .5);--shadow-card: 0 1px 4px rgba(0, 0, 0, .04), 0 0 1px rgba(0, 0, 0, .06);--radius-sm: 6px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-pill: 999px;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px;--space-3xl: 40px;--space-4xl: 48px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", sans-serif;--font-heading: Georgia, "Times New Roman", "Songti SC", "SimSun", serif;--font-mono: "JetBrains Mono", SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--line-height-tight: 1.3;--line-height-normal: 1.5;--line-height-relaxed: 1.7;--color-primary: var(--primary);--color-primary-hover: var(--primary-hover);--color-primary-foreground: var(--primary-foreground);--color-primary-soft: var(--accent-soft);--color-accent: var(--accent);--color-accent-hover: var(--accent-hover);--color-accent-soft: var(--accent-soft);--color-accent-light: var(--accent-light);--color-accent-link: var(--accent-link);--color-accent-ultra-soft: var(--accent-ultra-soft);--color-bg: var(--bg);--color-bg-gradient: var(--bg-gradient);--color-bg-muted: var(--surface-hover);--color-surface: var(--surface);--color-surface-hover: var(--surface-hover);--color-surface-tint: var(--surface-tint);--color-sidebar-bg: var(--sidebar-bg);--color-sidebar-text: var(--sidebar-text);--color-sidebar-text-hover: var(--sidebar-text-hover);--color-sidebar-active-bg: var(--sidebar-active-bg);--color-sidebar-active-text: var(--sidebar-active-text);--color-text: var(--text);--color-text-secondary: var(--text-secondary);--color-text-muted: var(--text-muted);--color-border: var(--border);--color-border-light: var(--border-light);--color-divider: var(--divider);--radius-full: var(--radius-pill);--space-1: var(--space-xs);--space-2: var(--space-sm);--space-3: var(--space-md);--space-4: var(--space-lg);--space-5: 20px;--space-6: var(--space-xl);--space-8: var(--space-2xl);--space-10: var(--space-3xl);--space-12: var(--space-4xl);--text-xs: 12px;--text-sm: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 30px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700}*,*:before,*:after{box-sizing:border-box;margin:0}html{font-family:var(--font-sans);font-size:var(--text-base);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{min-height:100vh;line-height:var(--line-height-normal);font-family:var(--font-sans);background-color:var(--color-bg)}#app{min-height:100vh}a{color:var(--color-accent-link);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit;font-size:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-surface-tint)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}@keyframes u-spin{to{transform:rotate(360deg)}}.u-spin{animation:u-spin 1s linear infinite}@media (max-width: 768px){:root{--mobile-tab-bar-height: calc(56px + env(safe-area-inset-bottom, 0px)) }html{-webkit-text-size-adjust:100%;text-size-adjust:100%}::-webkit-scrollbar{width:4px;height:4px}body{overscroll-behavior:none}}
