*{margin:0;padding:0;box-sizing:border-box}:root{--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--transition-spring: .6s cubic-bezier(.34, 1.56, .64, 1);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-full: 9999px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--container-max-width: 1400px;--container-padding: 24px}[data-theme=dark]{--primary-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--primary-gradient-hover: linear-gradient(135deg, #5a6fd6 0%, #6a4190 100%);--accent-gradient: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--success-gradient: linear-gradient(135deg, #11998e 0%, #38ef7d 100%);--warning-gradient: linear-gradient(135deg, #f2994a 0%, #f2c94c 100%);--error-gradient: linear-gradient(135deg, #eb3349 0%, #f45c43 100%);--color-primary: #667eea;--color-primary-light: #a5b4fc;--color-primary-dark: #5a67d8;--color-accent: #f093fb;--color-accent-alt: #f5576c;--color-bg-deep: #0f0f1a;--color-bg-dark: #13131f;--color-bg-card: #1a1a2e;--color-bg-elevated: #242438;--color-bg-hover: #2d2d44;--glass-bg: rgba(255, 255, 255, .03);--glass-bg-hover: rgba(255, 255, 255, .06);--glass-border: rgba(255, 255, 255, .08);--glass-border-hover: rgba(255, 255, 255, .15);--color-text-primary: #f0f0f5;--color-text-secondary: #a0a0b8;--color-text-muted: #6b6b80;--color-text-accent: #c4b5fd;--color-success: #10b981;--color-success-light: #34d399;--color-warning: #f59e0b;--color-warning-light: #fbbf24;--color-error: #ef4444;--color-error-light: #f87171;--color-info: #3b82f6;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .25);--shadow-md: 0 4px 20px rgba(0, 0, 0, .35);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .5);--shadow-xl: 0 25px 60px rgba(0, 0, 0, .6);--shadow-glow: 0 0 40px rgba(102, 126, 234, .3);--shadow-glow-accent: 0 0 40px rgba(240, 147, 251, .25);--color-sidebar-bg: rgba(10, 10, 18, .85);--color-sidebar-border: rgba(255, 255, 255, .04);--color-sidebar-hover: rgba(255, 255, 255, .06);--color-sidebar-divider: rgba(255, 255, 255, .06);--color-sidebar-text: rgba(255, 255, 255, .35);--color-sidebar-text-hover: rgba(255, 255, 255, .6);--color-overlay-bg: rgba(0, 0, 0, .8);--color-modal-bg: rgba(20, 20, 35, .95);--color-popover-divider: rgba(255, 255, 255, .06);--color-popover-hover: rgba(255, 255, 255, .05);--color-card-solid: #141423;--color-panel-bg: rgba(14, 14, 28, .7);--color-page-gradient-start: #0a0a12;--color-page-gradient-mid: #0f0f1a;--color-page-gradient-end: #0a0f2c;--color-divider: rgba(255, 255, 255, .06);--color-border-subtle: rgba(255, 255, 255, .04);--color-border-light: rgba(255, 255, 255, .06);--color-border-medium: rgba(255, 255, 255, .08);--color-border-strong: rgba(255, 255, 255, .12);--color-border-focus: rgba(102, 126, 234, .45);--color-input-bg: rgba(255, 255, 255, .04);--color-input-bg-hover: rgba(255, 255, 255, .07);--color-input-bg-focus: rgba(255, 255, 255, .06);--color-actions-overlay: rgba(0, 0, 0, .6);--color-badge-bg: rgba(0, 0, 0, .7);--color-tint-white-02: rgba(255, 255, 255, .02);--color-tint-white-03: rgba(255, 255, 255, .03);--color-tint-white-04: rgba(255, 255, 255, .04);--color-tint-white-05: rgba(255, 255, 255, .05);--color-tint-white-06: rgba(255, 255, 255, .06);--color-tint-white-08: rgba(255, 255, 255, .08);--color-tint-white-10: rgba(255, 255, 255, .1);--color-tint-white-12: rgba(255, 255, 255, .12);--color-tint-white-15: rgba(255, 255, 255, .15);--color-tint-white-20: rgba(255, 255, 255, .2);--color-tint-black-20: rgba(0, 0, 0, .2);--color-tint-black-30: rgba(0, 0, 0, .3);--color-tint-black-50: rgba(0, 0, 0, .5);--color-tint-black-60: rgba(0, 0, 0, .6);--color-tint-black-70: rgba(0, 0, 0, .7);--scrollbar-track: rgba(255, 255, 255, .02);--scrollbar-thumb: linear-gradient(180deg, rgba(102, 126, 234, .4) 0%, rgba(118, 75, 162, .4) 100%);--scrollbar-thumb-hover: linear-gradient(180deg, rgba(102, 126, 234, .6) 0%, rgba(118, 75, 162, .6) 100%);--scrollbar-color: rgba(102, 126, 234, .4) rgba(255, 255, 255, .02);--particle-color: 129, 140, 248}[data-theme=light]{--primary-gradient: linear-gradient(135deg, #5a6fd6 0%, #6a4190 100%);--primary-gradient-hover: linear-gradient(135deg, #4e5fc4 0%, #5c377e 100%);--accent-gradient: linear-gradient(135deg, #e070eb 0%, #e04058 100%);--success-gradient: linear-gradient(135deg, #0d8a7a 0%, #2ed06d 100%);--warning-gradient: linear-gradient(135deg, #e08a3a 0%, #e0b83a 100%);--error-gradient: linear-gradient(135deg, #d42a3f 0%, #e04838 100%);--color-primary: #5a6fd6;--color-primary-light: #8b9cf0;--color-primary-dark: #4a5bc0;--color-accent: #d070e0;--color-accent-alt: #e04058;--color-bg-deep: #f8f9fc;--color-bg-dark: #f0f1f6;--color-bg-card: #ffffff;--color-bg-elevated: #ffffff;--color-bg-hover: #ecedf4;--glass-bg: rgba(0, 0, 0, .02);--glass-bg-hover: rgba(0, 0, 0, .04);--glass-border: rgba(0, 0, 0, .08);--glass-border-hover: rgba(0, 0, 0, .15);--color-text-primary: #1a1b2e;--color-text-secondary: #5a5b6e;--color-text-muted: #8a8b9e;--color-text-accent: #6a4190;--color-success: #059669;--color-success-light: #10b981;--color-warning: #d97706;--color-warning-light: #f59e0b;--color-error: #dc2626;--color-error-light: #ef4444;--color-info: #2563eb;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .06);--shadow-md: 0 4px 20px rgba(0, 0, 0, .08);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .12);--shadow-xl: 0 25px 60px rgba(0, 0, 0, .15);--shadow-glow: 0 0 40px rgba(90, 111, 214, .15);--shadow-glow-accent: 0 0 40px rgba(208, 112, 224, .12);--color-sidebar-bg: rgba(255, 255, 255, .9);--color-sidebar-border: rgba(0, 0, 0, .06);--color-sidebar-hover: rgba(0, 0, 0, .04);--color-sidebar-divider: rgba(0, 0, 0, .06);--color-sidebar-text: rgba(0, 0, 0, .4);--color-sidebar-text-hover: rgba(0, 0, 0, .65);--color-overlay-bg: rgba(0, 0, 0, .4);--color-modal-bg: rgba(255, 255, 255, .97);--color-popover-divider: rgba(0, 0, 0, .06);--color-popover-hover: rgba(0, 0, 0, .04);--color-card-solid: #ffffff;--color-panel-bg: rgba(255, 255, 255, .85);--color-page-gradient-start: #f8f9fc;--color-page-gradient-mid: #f0f1f6;--color-page-gradient-end: #e8eaef;--color-divider: rgba(0, 0, 0, .06);--color-border-subtle: rgba(0, 0, 0, .04);--color-border-light: rgba(0, 0, 0, .06);--color-border-medium: rgba(0, 0, 0, .08);--color-border-strong: rgba(0, 0, 0, .12);--color-border-focus: rgba(90, 111, 214, .45);--color-input-bg: rgba(0, 0, 0, .03);--color-input-bg-hover: rgba(0, 0, 0, .05);--color-input-bg-focus: rgba(0, 0, 0, .04);--color-actions-overlay: rgba(255, 255, 255, .7);--color-badge-bg: rgba(0, 0, 0, .6);--color-tint-white-02: rgba(0, 0, 0, .01);--color-tint-white-03: rgba(0, 0, 0, .02);--color-tint-white-04: rgba(0, 0, 0, .03);--color-tint-white-05: rgba(0, 0, 0, .04);--color-tint-white-06: rgba(0, 0, 0, .05);--color-tint-white-08: rgba(0, 0, 0, .06);--color-tint-white-10: rgba(0, 0, 0, .08);--color-tint-white-12: rgba(0, 0, 0, .1);--color-tint-white-15: rgba(0, 0, 0, .12);--color-tint-white-20: rgba(0, 0, 0, .15);--color-tint-black-20: rgba(0, 0, 0, .08);--color-tint-black-30: rgba(0, 0, 0, .12);--color-tint-black-50: rgba(0, 0, 0, .2);--color-tint-black-60: rgba(0, 0, 0, .25);--color-tint-black-70: rgba(0, 0, 0, .3);--scrollbar-track: rgba(0, 0, 0, .03);--scrollbar-thumb: linear-gradient(180deg, rgba(90, 111, 214, .3) 0%, rgba(106, 65, 144, .3) 100%);--scrollbar-thumb-hover: linear-gradient(180deg, rgba(90, 111, 214, .5) 0%, rgba(106, 65, 144, .5) 100%);--scrollbar-color: rgba(90, 111, 214, .3) rgba(0, 0, 0, .03);--particle-color: 90, 111, 214}@media (max-width: 1024px){:root{--spacing-lg: 20px;--spacing-xl: 28px;--spacing-2xl: 40px;--spacing-3xl: 56px;--container-padding: 20px}}@media (max-width: 768px){:root{--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 24px;--spacing-2xl: 32px;--spacing-3xl: 48px;--container-padding: 16px;--radius-lg: 12px;--radius-xl: 16px}}@media (max-width: 480px){:root{--spacing-sm: 6px;--spacing-md: 10px;--spacing-lg: 14px;--spacing-xl: 20px;--spacing-2xl: 28px;--spacing-3xl: 40px;--container-padding: 12px;--radius-md: 8px;--radius-lg: 10px;--radius-xl: 14px}}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;background:var(--color-bg-deep);color:var(--color-text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;background-attachment:fixed;min-height:100vh;overflow-x:hidden;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:transparent;transition:background-color .3s,color .3s}#app{width:100%;min-height:100vh;min-height:100dvh;position:relative}button{font-family:inherit;cursor:pointer;transition:all var(--transition-normal);border:none;border-radius:var(--radius-md);font-weight:600;letter-spacing:.01em}button:disabled{cursor:not-allowed;opacity:.5;transform:none!important}button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}input,textarea,select{font-family:inherit;color:var(--color-text-primary);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:10px 14px;transition:all var(--transition-normal);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}input:focus,textarea:focus,select:focus{outline:none;background:var(--glass-bg-hover);border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea33,var(--shadow-glow)}input:hover:not(:focus),textarea:hover:not(:focus),select:hover:not(:focus){border-color:var(--glass-border-hover);background:var(--glass-bg-hover)}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-color)}@media (max-width: 1200px){:root{font-size:15px}}@media (max-width: 768px){:root{font-size:14px}input,textarea,select{padding:8px 12px}}@media (max-width: 480px){:root{font-size:13px}input,textarea,select{padding:7px 10px}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glow{0%,to{box-shadow:0 0 20px #667eea4d}50%{box-shadow:0 0 40px #667eea80,0 0 60px #f093fb4d}}@keyframes borderGlow{0%,to{border-color:#667eea4d}50%{border-color:#f093fb80}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes subtleGlow{0%,to{box-shadow:0 0 20px #667eea26}50%{box-shadow:0 0 30px #667eea40,0 0 60px #f093fb1a}}@keyframes borderShimmer{0%{border-color:#667eea26}50%{border-color:#f093fb33}to{border-color:#667eea26}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.glass-card{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);transition:all var(--transition-normal)}.glass-card:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-hover);box-shadow:var(--shadow-md)}.gradient-text{background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-text-accent{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn-primary{background:var(--primary-gradient);color:#fff;padding:10px 20px;font-weight:600;border-radius:var(--radius-md);border:none;box-shadow:0 4px 15px #667eea66;transition:all var(--transition-normal);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea80}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:var(--glass-bg);color:var(--color-text-primary);padding:10px 20px;border:1px solid var(--glass-border);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all var(--transition-normal);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}.btn-secondary:hover:not(:disabled){background:var(--glass-bg-hover);border-color:var(--color-primary);transform:translateY(-1px)}.btn-accent{background:var(--accent-gradient);color:#fff;padding:10px 20px;font-weight:600;border-radius:var(--radius-md);border:none;box-shadow:0 4px 15px #f093fb66;transition:all var(--transition-normal);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}.btn-accent:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #f093fb80}@media (max-width: 768px){.btn-primary,.btn-secondary,.btn-accent{min-height:40px;padding:8px 16px}.btn-primary:hover:not(:disabled),.btn-secondary:hover:not(:disabled),.btn-accent:hover:not(:disabled){transform:none}.btn-primary:active:not(:disabled),.btn-secondary:active:not(:disabled),.btn-accent:active:not(:disabled){opacity:.8;transform:scale(.98)}}.loading-spinner{width:40px;height:40px;border:3px solid rgba(102,126,234,.2);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.loading-dots{display:flex;gap:6px}.loading-dots span{width:8px;height:8px;background:var(--color-primary);border-radius:50%;animation:pulse 1.4s ease-in-out infinite}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}.hover-lift{transition:all var(--transition-normal)}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.animate-border{position:relative;background:var(--glass-bg);border-radius:var(--radius-lg)}.animate-border:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:inherit;background:var(--primary-gradient);z-index:-1;opacity:0;transition:opacity var(--transition-normal)}.animate-border:hover:before{opacity:1}.selected{border-color:var(--color-primary)!important;background:#667eea1a!important;box-shadow:0 0 0 3px #667eea33}.hide-mobile{display:block}.show-mobile{display:none}.container-responsive{width:100%;max-width:var(--container-max-width);margin:0 auto;padding:0 var(--container-padding)}button,a,[role=button],input[type=button],input[type=submit]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}@media (max-width: 768px){.hide-mobile{display:none!important}.show-mobile{display:block!important}.reduce-motion-mobile *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.n-popover,.v-binder-follower-content,.n-popover-shared{max-width:calc(100vw - 16px)!important}}@media (max-width: 480px){.hide-small{display:none!important}}
