:root{--ssp-blue: #1677ff;--ssp-blue-light: #4096ff;--ssp-blue-lighter: #e6f7ff;--ssp-blue-dark: #0958d9;--ssp-purple: #722ed1;--ssp-purple-light: #9254de;--ssp-purple-lighter: #f5f0ff;--ssp-purple-dark: #531dab;--ssp-gradient-primary: linear-gradient(135deg, #1677ff 0%, #4096ff 50%, #722ed1 100%);--ssp-gradient-hero: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--ssp-gradient-warm: linear-gradient(135deg, #ff7d00 0%, #ff4d4f 100%);--ssp-gradient-page: linear-gradient(180deg, #e6f7ff 0%, #ffffff 30%);--ssp-gradient-card: linear-gradient(135deg, #f8f9ff 0%, #f0f5ff 100%);--ssp-success: #00b42a;--ssp-warning: #ff7d00;--ssp-error: #ff4d4f;--ssp-info: #1677ff;--ssp-text-primary: #1d2129;--ssp-text-secondary: #4e5969;--ssp-text-tertiary: #86909c;--ssp-text-disabled: #c9cdd4;--ssp-border: #e5e6eb;--ssp-border-light: #f2f3f5;--ssp-bg-page: #f7f8fa;--ssp-bg-card: #ffffff;--ssp-bg-hover: #f2f3f5;--ssp-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .03), 0 1px 6px -1px rgba(0, 0, 0, .02), 0 2px 4px 0 rgba(0, 0, 0, .02);--ssp-shadow-md: 0 3px 6px -4px rgba(0, 0, 0, .06), 0 6px 16px 0 rgba(0, 0, 0, .04), 0 9px 28px 8px rgba(0, 0, 0, .02);--ssp-shadow-lg: 0 6px 16px -8px rgba(0, 0, 0, .08), 0 9px 28px 0 rgba(0, 0, 0, .05), 0 12px 48px 16px rgba(0, 0, 0, .03);--ssp-shadow-hover: 0 6px 20px rgba(22, 119, 255, .12);--ssp-radius-xs: 4px;--ssp-radius-sm: 8px;--ssp-radius-md: 12px;--ssp-radius-lg: 16px;--ssp-radius-xl: 20px;--ssp-radius-2xl: 24px;--ssp-radius-full: 9999px;--ssp-space-xs: 4px;--ssp-space-sm: 8px;--ssp-space-md: 16px;--ssp-space-lg: 24px;--ssp-space-xl: 32px;--ssp-space-2xl: 48px;--ssp-space-3xl: 64px;--ssp-font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--ssp-font-xs: 12px;--ssp-font-sm: 13px;--ssp-font-base: 14px;--ssp-font-md: 15px;--ssp-font-lg: 16px;--ssp-font-xl: 18px;--ssp-font-2xl: 20px;--ssp-font-3xl: 24px;--ssp-font-4xl: 30px;--ssp-font-5xl: 36px;--ssp-header-height: 64px;--ssp-sidebar-width: 240px;--ssp-sidebar-collapsed: 64px;--ssp-content-max-width: 1200px;--ssp-content-wide: 1400px;--ssp-transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--ssp-transition-base: .25s cubic-bezier(.4, 0, .2, 1);--ssp-transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--ssp-transition-spring: .5s cubic-bezier(.34, 1.56, .64, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--ssp-font-family);font-size:var(--ssp-font-base);color:var(--ssp-text-primary);background:var(--ssp-bg-page);line-height:1.6;min-height:100vh}a{color:var(--ssp-blue);text-decoration:none;transition:color var(--ssp-transition-fast)}a:hover{color:var(--ssp-blue-dark)}img{max-width:100%;height:auto}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#c9cdd4;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#86909c}.text-gradient{background:var(--ssp-gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass-card{background:#ffffffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.6);border-radius:var(--ssp-radius-lg)}.hover-lift{transition:transform var(--ssp-transition-base),box-shadow var(--ssp-transition-base)}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--ssp-shadow-hover)}.salary-text{color:var(--ssp-blue);font-weight:600}.tag{display:inline-flex;align-items:center;padding:2px 8px;font-size:var(--ssp-font-xs);border-radius:var(--ssp-radius-full);background:var(--ssp-blue-lighter);color:var(--ssp-blue);font-weight:500;line-height:1.6}.tag-purple{background:var(--ssp-purple-lighter);color:var(--ssp-purple)}.tag-gold{background:#fffbe6;color:#d48806}.tag-green{background:#e8ffea;color:#00b42a}.fade-enter-active,.fade-leave-active{transition:opacity var(--ssp-transition-base)}.fade-enter-from,.fade-leave-to{opacity:0}.slide-up-enter-active,.slide-up-leave-active{transition:all var(--ssp-transition-base)}.slide-up-enter-from{opacity:0;transform:translateY(20px)}.slide-up-leave-to{opacity:0;transform:translateY(-10px)}.scale-enter-active,.scale-leave-active{transition:all var(--ssp-transition-fast)}.scale-enter-from,.scale-leave-to{opacity:0;transform:scale(.95)}
