:root{--brand-primary:#7c3aed;--brand-secondary:#8b5cf6;--brand-primary-hover:#6d28d9;--brand-primary-active:#5b21b6;--brand-light:#f3e8ff;--brand-gradient:linear-gradient(135deg, #7c3aed 0%, #9333ea 100%);--color-success:#10b981;--color-success-light:#d1fae5;--color-warning:#f59e0b;--color-warning-light:#fef3c7;--color-danger:#ef4444;--color-danger-light:#fee2e2;--color-info:#3b82f6;--color-info-light:#dbeafe;--text-primary:#1f2937;--text-regular:#4b5563;--text-secondary:#6b7280;--text-muted:#9ca3af;--bg-page:#f8fafc;--bg-surface:#fff;--bg-surface-hover:#f1f5f9;--border-light:#e5e7eb;--border-base:#d1d5db;--border-dark:#9ca3af;--font-family-base:"PingFang SC", "Microsoft YaHei", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--font-size-4xl:28px;--line-height-base:1.6;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 2px 4px #7c3aed0d;--shadow-base:0 4px 12px #0000000a;--shadow-md:0 8px 24px #0000000f;--shadow-lg:0 20px 40px #00000026;--shadow-toast:0 10px 25px #0000001a;--shadow-brand:0 4px 12px #7c3aed33;--shadow-brand-hover:0 6px 16px #7c3aed4d;--el-color-primary:var(--brand-primary);--el-color-primary-light-3:#9f6bf0;--el-color-primary-light-5:#b891f4;--el-color-primary-light-7:#d1b8f8;--el-color-primary-light-9:var(--brand-light);--el-color-primary-dark-2:var(--brand-primary-hover);--el-border-radius-base:var(--radius-md);--el-border-radius-small:var(--radius-sm);--el-border-radius-round:var(--radius-full);--el-text-color-primary:var(--text-primary);--el-text-color-regular:var(--text-regular);--el-text-color-secondary:var(--text-secondary);--el-border-color:var(--border-light)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--text-regular);background-color:var(--bg-page);-webkit-font-smoothing:antialiased}[v-cloak]{display:none!important}button,input,select,textarea{outline:none;font-family:inherit}a{color:var(--brand-primary);text-decoration:none;transition:color .2s}a:hover{color:var(--brand-primary-hover)}ul,ol{list-style:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--brand-light)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-sm{gap:8px}.gap-md{gap:16px}.gap-lg{gap:24px}.flex-1{flex:1}.w-full{width:100%}.h-full{height:100%}.text-center{text-align:center}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-brand{color:var(--brand-primary)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.jd-card{background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-base);padding:24px;transition:box-shadow .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1)}.jd-card-hoverable:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.jd-btn{border-radius:var(--radius-full);height:40px;font-size:var(--font-size-md);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:600;transition:all .2s;display:inline-flex}.jd-btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none;box-shadow:none!important;transform:none!important}.jd-btn-primary{background:var(--brand-gradient);color:#fff;box-shadow:var(--shadow-brand);border:none}.jd-btn-primary:hover{box-shadow:var(--shadow-brand-hover);transform:translateY(-2px)}.jd-btn-primary:active{transform:translateY(0)}.jd-btn-outline{background:var(--bg-surface);border-color:var(--border-light);color:var(--text-regular)}.jd-btn-outline:hover{background:var(--brand-light);border-color:var(--brand-primary);color:var(--brand-primary)}.jd-input{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-surface);width:100%;height:44px;color:var(--text-primary);padding:0 16px;transition:all .2s}.jd-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-light)}.el-button--primary{background:var(--brand-gradient)!important;box-shadow:var(--shadow-brand)!important;border:none!important;transition:all .2s!important}.el-button--primary:hover,.el-button--primary:focus{opacity:.9;transform:translateY(-1px);background:var(--brand-gradient)!important;box-shadow:var(--shadow-brand-hover)!important}.el-dialog,.el-card{border-radius:var(--radius-lg)!important}.el-checkbox__input.is-checked .el-checkbox__inner,.el-radio__input.is-checked .el-radio__inner{background-color:var(--brand-primary)!important;border-color:var(--brand-primary)!important}.el-checkbox__input.is-checked+.el-checkbox__label,.el-radio__input.is-checked+.el-radio__label{color:var(--brand-primary)!important}
