AI投递助手

This commit is contained in:
2026-07-10 02:08:41 +08:00
parent cd64ded6ae
commit cf268520e1
32 changed files with 3612 additions and 2165 deletions
+3 -1
View File
@@ -361,7 +361,9 @@ body:not(#_) {
.aliite-e{
align-items: flex-end;
}
.aliite-st{
align-items: stretch;
}
//英文字母或数字一行溢出超出,打断
.word-bra{
word-break: break-all;
@@ -1,317 +1,235 @@
@use '../variables' as *;
// 申请进度消息组件
// 投递进度卡片组件(新版4步骤)
.agent-apply-progress {
background: $bg-middle;
border-radius: 0.12rem;
padding: 0.2rem;
font-size: 0.14rem;
background: $bg-white;
border: 1px solid #F0F0F0;
border-radius: 0.08rem;
padding: 0.16rem 0.2rem;
// 顶部标题栏
&__header {
// 已完成状态
&--completed {
opacity: 0.9;
}
// 顶部区域:岗位信息 + 步骤条
&__top {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 0.16rem;
}
&__title {
font-size: 0.15rem;
font-weight: 600;
color: $text-dark;
// 可点击状态(暂停/恢复)
&--clickable {
cursor: pointer;
color: $accent;
&:hover {
opacity: 0.8;
}
}
}
&__cancel {
font-size: 0.13rem;
color: $text-middle;
cursor: pointer;
&:hover {
color: $text-dark;
}
}
// 岗位信息卡片
&__job-card {
display: flex;
align-items: center;
gap: 0.12rem;
background: $bg-white;
border-radius: 0.1rem;
padding: 0.14rem 0.16rem;
margin-bottom: 0.2rem;
}
&__job-icon {
width: 0.36rem;
height: 0.36rem;
border-radius: 0.08rem;
background: $bg-main;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
color: $text-middle;
svg {
width: 0.2rem;
height: 0.2rem;
}
}
&__job-info {
min-width: 0;
}
&__job-company {
font-size: 0.14rem;
font-weight: 600;
color: $text-dark;
line-height: 1.4;
}
&__job-title {
font-size: 0.12rem;
color: $text-middle;
line-height: 1.4;
}
// 步骤列表
&__steps {
display: flex;
flex-direction: column;
gap: 0.14rem;
}
&__step {
display: flex;
align-items: flex-start;
gap: 0.1rem;
flex-wrap: wrap;
}
// 勾选框
&__step-check {
width: 0.18rem;
height: 0.18rem;
border: 1.5px solid $text-light;
border-radius: 0.03rem;
// 岗位信息
&__job-info {
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
margin-top: 0.01rem;
svg {
width: 0.12rem;
height: 0.12rem;
}
// 已完成态
&--done {
border-color: $text-dark;
background: $text-dark;
color: $bg-white;
}
gap: 0.28rem;
}
&__step-label {
font-size: 0.14rem;
&__job-title {
font-size: 0.18rem;
font-weight: 520;
color: $text-dark;
line-height: 0.2rem;
line-height: 0.27rem;
}
// 步骤展开内容
&__step-content {
width: 100%;
margin-top: 0.08rem;
padding-left: 0.28rem;
}
// 第2步:简历确认区域
&__resume-confirm {
display: flex;
align-items: center;
justify-content: space-between;
background: $bg-white;
border-radius: 0.08rem;
padding: 0.1rem 0.14rem;
}
&__resume-file {
&__company {
display: flex;
align-items: center;
gap: 0.08rem;
}
&__file-icon {
width: 0.18rem;
height: 0.18rem;
color: $text-dark;
}
&__company-logo {
width: 0.24rem;
height: 0.24rem;
border-radius: 0.04rem;
object-fit: cover;
&__resume-name {
font-size: 0.13rem;
color: $text-dark;
}
&--placeholder {
background: $bg-main;
display: flex;
align-items: center;
justify-content: center;
color: $text-middle;
&__confirm-btn {
height: 0.28rem;
padding: 0 0.16rem;
background: $btn-dark;
color: $bg-white;
border: none;
border-radius: 0.14rem;
font-size: 0.12rem;
cursor: pointer;
transition: all 0.2s;
&:hover {
background: $btn-dark-hover;
}
&:disabled {
background: $text-light;
cursor: not-allowed;
svg {
width: 0.14rem;
height: 0.14rem;
}
}
}
// 第3步:投递操作区域
&__apply-area {
background: $bg-white;
border-radius: 0.08rem;
padding: 0.14rem 0.16rem;
&__company-name {
font-size: 0.18rem;
font-weight: 330;
color: $text-dark;
line-height: 0.27rem;
}
&__apply-desc {
font-size: 0.12rem;
color: $text-middle;
line-height: 1.8;
margin: 0;
}
&__apply-actions {
// 步骤条
&__steps {
display: flex;
align-items: center;
justify-content: flex-end;
gap: 0.1rem;
margin-top: 0.14rem;
gap: 0.12rem;
}
&__skip-btn {
font-size: 0.12rem;
color: $text-middle;
cursor: pointer;
text-decoration: underline;
// 步骤项
&__step-item {
display: flex;
align-items: center;
gap: 0.08rem;
}
&:hover {
// 步骤图标
&__step-icon {
width: 0.40rem;
height: 0.40rem;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
svg {
width: 0.20rem;
height: 0.20rem;
}
// 已完成
&--done {
background: $accent;
color: #fff;
}
// 进行中
&--active {
background: #EDF9FA;
color: $accent;
}
// 待处理
&--pending {
background: $bg-main;
color: $text-middle;
}
}
// 步骤文字区域
&__step-text {
display: flex;
flex-direction: column;
gap: 0.04rem;
}
// 步骤名称
&__step-name {
font-size: 0.14rem;
font-weight: 520;
line-height: 0.19rem;
&--done {
color: $text-dark;
}
&--disabled {
color: $text-light;
cursor: not-allowed;
pointer-events: none;
&--active {
color: $text-dark;
}
&--pending {
color: $text-middle;
}
}
&__applied-btn {
height: 0.28rem;
padding: 0 0.14rem;
background: $btn-dark;
color: $bg-white;
border: none;
border-radius: 0.14rem;
// 步骤状态文字
&__step-status {
font-size: 0.12rem;
cursor: pointer;
transition: all 0.2s;
font-weight: 330;
line-height: 0.16rem;
&:hover {
background: $btn-dark-hover;
&--done {
color: #9FD051;
}
&:disabled {
background: $text-light;
cursor: not-allowed;
&--active {
color: #F59E0B;
}
&--pending {
color: $text-middle;
}
}
&__goto-btn {
height: 0.28rem;
padding: 0 0.14rem;
background: $btn-dark;
color: $bg-white;
border: none;
border-radius: 0.14rem;
font-size: 0.12rem;
cursor: pointer;
transition: all 0.2s;
&:hover {
background: $btn-dark-hover;
}
&:disabled {
background: $text-light;
cursor: not-allowed;
}
}
}
// 右侧面板:简历生成进度
.agent-resume-generating {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
padding: 0.4rem;
// 进度条容器
&__progress-bar {
width: 100%;
max-width: 3rem;
height: 0.04rem;
background: $border-color;
border-radius: 0.02rem;
overflow: hidden;
margin-bottom: 0.2rem;
// 步骤连接线
&__step-line {
width: 0.40rem;
height: 0.02rem;
background: #E5E7EB;
flex-shrink: 0;
}
&__progress-fill {
height: 100%;
background: $text-dark;
border-radius: 0.02rem;
transition: width 0.3s ease;
}
&__title {
font-size: 0.18rem;
font-weight: 700;
color: $text-dark;
margin-bottom: 0.1rem;
// 底部区域:提示 + 按钮
&__bottom {
display: flex;
justify-content: space-between;
align-items: flex-end;
margin-top: 0.16rem;
}
// 提示文字
&__hint {
font-size: 0.14rem;
font-weight: 450;
color: $text-middle;
line-height: 0.19rem;
// 警告色(橙色)
&--warning {
color: #F59E0B;
}
// 强调色(品牌色)
&--accent {
color: $accent;
}
}
// 操作按钮区
&__actions {
display: flex;
align-items: center;
gap: 0.06rem;
font-size: 0.12rem;
color: $text-middle;
gap: 0.16rem;
}
&__hint-icon {
width: 0.14rem;
height: 0.14rem;
color: $accent;
// 按钮基础样式
&__btn {
height: 0.27rem;
padding: 0.04rem 0.12rem;
border-radius: 0.08rem;
font-size: 0.14rem;
font-weight: 380;
line-height: 0.19rem;
text-align: center;
cursor: pointer;
border: none;
transition: opacity 0.2s;
&:hover {
opacity: 0.85;
}
// 边框按钮
&--outline {
background: transparent;
border: 1px solid $accent;
color: $accent;
}
// 实心按钮
&--primary {
background: $accent;
color: #FFFFFF;
}
}
}
@@ -2,25 +2,50 @@
// ==================== Agent推荐岗位列表组件样式 ====================
.agent-chat-job-list {
background: $bg-middle;
background: $bg-white;
border: 1px solid #F0F0F0;
box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.04);
border-radius: 0.12rem;
padding: 0.24rem;
font-size: 0.14rem;
// 标题
&__header {
font-size: 0.18rem;
font-weight: 700;
font-size: 0.22rem;
font-weight: 520;
color: $text-dark;
margin-bottom: 0.06rem;
margin-bottom: 0.04rem;
line-height: 0.29rem;
}
// 推荐说明文字
&__summary {
font-size: 0.13rem;
font-size: 0.14rem;
font-weight: 330;
color: $text-middle;
margin-bottom: 0.18rem;
line-height: 1.5;
margin-bottom: 0.16rem;
line-height: 0.19rem;
}
// 可滚动岗位列表区域(默认显示约3.5个岗位高度)
&__scroll {
max-height: 3.64rem;
overflow-y: auto;
scrollbar-width: thin;
scrollbar-color: $border-color transparent;
&::-webkit-scrollbar {
width: 4px;
}
&::-webkit-scrollbar-thumb {
background: $border-color;
border-radius: 2px;
}
&::-webkit-scrollbar-track {
background: transparent;
}
}
// 单个岗位项
@@ -28,31 +53,38 @@
display: flex;
align-items: center;
justify-content: space-between;
background: $bg-white;
border-radius: 0.1rem;
flex-wrap: wrap;
padding: 0.16rem 0.2rem;
margin-bottom: 0.1rem;
border: 1px solid #F0F0F0;
border-radius: 0.08rem;
margin-bottom: 0.08rem;
cursor: pointer;
transition: border-color 0.2s ease;
&:last-of-type {
&:last-child {
margin-bottom: 0;
}
&:hover {
border-color: $accent;
}
}
// 左侧信息区域(可点击
&__info {
// 左侧区域(匹配度 + 岗位信息
&__left {
display: flex;
align-items: center;
gap: 0.14rem;
flex-wrap: wrap;
gap: 0.16rem;
flex: 1;
min-width: 0;
cursor: pointer;
}
// 匹配度环形容器
&__score {
width: 0.62rem;
height: 0.62rem;
position: relative;
width: 0.48rem;
height: 0.48rem;
flex-shrink: 0;
}
@@ -68,98 +100,148 @@
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
font-size: 0.11rem;
font-weight: 700;
color: $text-dark;
font-size: 0.14rem;
font-weight: 630;
color: #9FD051;
line-height: 0.22rem;
}
// 岗位详情
// 岗位详情区域
&__detail {
min-width: 0;
flex: 1;
display: flex;
flex-direction: column;
justify-content: space-between;
gap: 0.24rem;
}
// 岗位标题行(岗位名 + 公司
// 岗位标题行(岗位名 + 公司)
&__title-row {
display: flex;
align-items: center;
gap: 0.08rem;
margin-bottom: 0.04rem;
flex-wrap: wrap;
gap: 0.32rem;
}
// 岗位名称
&__title {
font-size: 0.15rem;
font-weight: 600;
font-size: 0.18rem;
font-weight: 520;
color: $text-dark;
line-height: 1.4;
line-height: 0.27rem;
}
// 公司名前的圆点
&__company-dot {
font-size: 0.08rem;
color: $text-light;
// 公司信息容器
&__company {
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 0.08rem;
}
// 公司 Logo
&__company-logo {
width: 0.24rem;
height: 0.24rem;
border-radius: 0.04rem;
object-fit: cover;
}
// 公司名称
&__company {
font-size: 0.13rem;
color: $text-middle;
&__company-name {
font-size: 0.18rem;
font-weight: 330;
color: $text-dark;
line-height: 0.27rem;
white-space: nowrap;
}
// 标签行
&__tags {
display: flex;
gap: 0.06rem;
align-items: center;
flex-wrap: wrap;
gap: 0.12rem;
}
// 单个标签
&__tag {
font-size: 0.11rem;
font-size: 0.14rem;
font-weight: 330;
color: $text-middle;
background: $bg-main;
padding: 0.02rem 0.08rem;
border-radius: 0.03rem;
line-height: 0.19rem;
display: flex;
align-items: center;
gap: 0.02rem;
svg {
width: 0.16rem;
height: 0.16rem;
color: $text-middle;
}
// 招聘分类标签(校招等)
&--category {
padding: 0.02rem 0.04rem;
background: #EDF9FA;
border-radius: 0.04rem;
font-size: 0.12rem;
color: $accent;
}
}
// 右侧操作按钮区域
&__actions {
display: flex;
align-items: center;
gap: 0.14rem;
flex-wrap: wrap;
gap: 0.08rem;
flex-shrink: 0;
margin-left: 0.16rem;
}
// 不再推荐按钮
&__dismiss-btn {
font-size: 0.12rem;
color: $text-light;
height: 0.35rem;
padding: 0 0.12rem;
background: transparent;
border: none;
font-size: 0.14rem;
font-weight: 520;
color: $accent;
cursor: pointer;
white-space: nowrap;
transition: color 0.2s ease;
transition: opacity 0.2s ease;
border-radius: 0.08rem;
&:hover {
color: $text-middle;
opacity: 0.7;
}
}
// 加入投递按钮
&__add-btn {
height: 0.32rem;
padding: 0 0.16rem;
display: flex;
align-items: center;
gap: 0.04rem;
height: 0.35rem;
padding: 0 0.12rem;
background: $accent;
color: $bg-white;
border: none;
border-radius: 0.16rem;
font-size: 0.12rem;
font-weight: 500;
border-radius: 0.08rem;
font-size: 0.14rem;
font-weight: 520;
cursor: pointer;
white-space: nowrap;
transition: all 0.2s ease;
line-height: 0.32rem;
svg {
width: 0.16rem;
height: 0.16rem;
flex-shrink: 0;
}
&:hover {
opacity: 0.85;
@@ -172,37 +254,55 @@
// 已加入状态
&--added {
background: $bg-main;
color: $text-middle;
border: 1px solid $border-color;
background: transparent;
color: $accent;
border: 1px solid $accent;
}
}
// 空状态
&__empty {
text-align: center;
color: $text-light;
padding: 0.4rem 0;
font-size: 0.14rem;
}
// 底部按钮区域
&__footer {
display: flex;
justify-content: center;
gap: 0.16rem;
margin-top: 0.2rem;
gap: 0.32rem;
margin-top: 0.24rem;
flex-wrap: wrap;
}
// 换一批按钮
&__refresh-btn {
height: 0.4rem;
padding: 0 0.4rem;
display: flex;
align-items: center;
justify-content: center;
gap: 0.04rem;
height: 0.43rem;
padding: 0 0.16rem;
min-width: 2.8rem;
background: $bg-white;
color: $text-dark;
border: 1px solid $border-color;
border-radius: 0.2rem;
color: $accent;
border: 1px solid $accent;
border-radius: 0.22rem;
font-size: 0.14rem;
font-weight: 500;
font-weight: 520;
cursor: pointer;
transition: all 0.2s ease;
line-height: 0.4rem;
svg {
width: 0.16rem;
height: 0.16rem;
flex-shrink: 0;
}
&:hover {
border-color: $accent;
color: $accent;
background: #EDF9FA;
}
&:disabled {
@@ -213,17 +313,27 @@
// 全部添加按钮
&__add-all-btn {
height: 0.4rem;
padding: 0 0.4rem;
display: flex;
align-items: center;
justify-content: center;
gap: 0.04rem;
height: 0.43rem;
padding: 0 0.16rem;
min-width: 2.8rem;
background: $accent;
color: $bg-white;
border: none;
border-radius: 0.2rem;
border-radius: 0.22rem;
font-size: 0.14rem;
font-weight: 500;
font-weight: 520;
cursor: pointer;
transition: all 0.2s ease;
line-height: 0.4rem;
svg {
width: 0.16rem;
height: 0.16rem;
flex-shrink: 0;
}
&:hover {
opacity: 0.85;
@@ -1,187 +1,113 @@
@use '../variables' as *;
/* Agent岗位预览面板样式 */
.agent-job-preview-panel {
/* Agent岗位预览抽屉 — 从浏览器右侧弹出 */
/* 遮罩层 */
.agent-job-drawer-mask {
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: var(--app-height, 100vh);
background: rgba(0, 0, 0, 0.3);
z-index: 2000;
display: flex;
justify-content: flex-end;
}
/* 抽屉主体 */
.agent-job-drawer {
width: 6.4rem;
height: var(--app-height, 100vh);
background: $bg-white;
display: flex;
flex-direction: column;
height: 100%;
background: $bg-white;
border-radius: 0.2rem;
overflow: hidden;
font-size: 0.14rem;
box-shadow: -4px 0 20px rgba(0, 0, 0, 0.08);
/* 顶部标题栏 */
&__header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 0.16rem 0.2rem;
border-bottom: 1px solid $border-color;
padding: 0.2rem 0.24rem;
height: 0.64rem;
box-sizing: border-box;
}
/* 返回按钮 */
&__back {
&__header-left {
display: flex;
align-items: center;
gap: 0.06rem;
gap: 0.16rem;
}
/* 关闭按钮 */
&__close {
width: 0.24rem;
height: 0.24rem;
cursor: pointer;
font-size: 0.15rem;
font-weight: 500;
color: $text-dark;
display: flex;
align-items: center;
justify-content: center;
}
&__back-icon {
width: 0.16rem;
height: 0.16rem;
}
/* 添加按钮 */
&__add-btn {
padding: 0.06rem 0.16rem;
background: $btn-dark;
color: $bg-white;
border: none;
border-radius: 0.06rem;
font-size: 0.13rem;
cursor: pointer;
transition: background 0.2s;
&:hover {
background: $btn-dark-hover;
}
&:disabled {
opacity: 0.6;
cursor: not-allowed;
}
}
/* 移出按钮 */
&__remove-btn {
padding: 0.06rem 0.16rem;
background: $bg-white;
&__close-icon {
width: 0.24rem;
height: 0.24rem;
color: $text-middle;
border: 1px solid $border-color;
border-radius: 0.06rem;
font-size: 0.13rem;
cursor: pointer;
transition: background 0.2s, color 0.2s;
}
&:hover {
background: $bg-main;
color: $danger;
}
&:disabled {
opacity: 0.6;
cursor: not-allowed;
}
/* 标题文字 */
&__title {
font-size: 0.18rem;
font-weight: 520;
color: $text-dark;
line-height: 0.24rem;
}
/* 内容区域(可滚动) */
&__body {
flex: 1;
overflow-y: auto;
padding: 0.2rem;
padding: 0.24rem;
}
/* 岗位卡片 */
&__card {
background: $bg-main;
border-radius: 0.12rem;
padding: 0.2rem;
margin-bottom: 0.16rem;
}
&__card-top {
/* 岗位标题区域 */
&__job-header {
display: flex;
justify-content: space-between;
align-items: flex-start;
gap: 0.24rem;
margin-bottom: 0.24rem;
}
&__card-left {
&__job-info {
flex: 1;
min-width: 0;
}
/* 公司行 */
&__company-row {
display: flex;
align-items: center;
gap: 0.08rem;
margin-bottom: 0.08rem;
}
&__company-icon {
width: 0.28rem;
height: 0.28rem;
border-radius: 0.06rem;
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
background: $bg-middle;
flex-shrink: 0;
img {
width: 100%;
height: 100%;
object-fit: cover;
}
svg {
width: 0.18rem;
height: 0.18rem;
color: $text-middle;
}
}
&__company-name {
font-size: 0.14rem;
font-weight: 500;
color: $text-dark;
}
&__time {
font-size: 0.12rem;
color: $text-light;
margin-left: 0.06rem;
}
/* 岗位标题 */
&__job-title {
font-size: 0.17rem;
font-weight: 600;
font-size: 0.24rem;
font-weight: 520;
color: $text-dark;
margin: 0.06rem 0 0.1rem;
line-height: 0.32rem;
margin: 0 0 0.08rem;
}
/* 元信息 */
&__meta {
display: flex;
align-items: center;
gap: 0.16rem;
flex-wrap: wrap;
}
&__meta-item {
display: flex;
align-items: center;
gap: 0.04rem;
font-size: 0.12rem;
color: $text-middle;
}
&__meta-icon {
width: 0.14rem;
height: 0.14rem;
flex-shrink: 0;
line-height: 0.16rem;
font-weight: 330;
}
/* 匹配度环 */
&__match {
position: relative;
width: 0.6rem;
height: 0.6rem;
width: 0.62rem;
height: 0.62rem;
flex-shrink: 0;
}
@@ -195,28 +121,141 @@
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
font-size: 0.13rem;
font-weight: 600;
color: $text-dark;
font-size: 0.14rem;
font-weight: 630;
color: #9FD051;
}
/* 内容段落 */
&__section {
margin-bottom: 0.2rem;
margin-bottom: 0.24rem;
}
&__section-title {
font-size: 0.14rem;
font-size: 0.18rem;
font-weight: 600;
color: $text-dark;
margin-bottom: 0.1rem;
line-height: 0.24rem;
margin-bottom: 0.16rem;
/* 加分项标题样式 */
&--bonus {
font-size: 0.14rem;
font-weight: 330;
color: $text-dark;
line-height: 0.19rem;
}
}
&__section-content {
font-size: 0.13rem;
font-size: 0.14rem;
color: $text-middle;
line-height: 1.8;
line-height: 0.19rem;
font-weight: 330;
white-space: pre-wrap;
word-break: break-word;
}
/* 技能标签 */
&__tags {
display: flex;
flex-wrap: wrap;
gap: 0.08rem;
margin-bottom: 0.12rem;
}
&__tag {
display: flex;
justify-content: center;
align-items: center;
padding: 0.04rem 0.06rem;
background: $bg-main;
border-radius: 0.04rem;
font-size: 0.12rem;
color: $text-middle;
line-height: 0.18rem;
font-weight: 330;
}
/* 公司概况 */
&__company {
display: flex;
flex-direction: column;
gap: 0.12rem;
}
&__company-row {
display: flex;
align-items: flex-start;
gap: 0.12rem;
}
&__company-logo {
width: 0.48rem;
height: 0.48rem;
border-radius: 0.08rem;
overflow: hidden;
flex-shrink: 0;
background: #EDF9FA;
display: flex;
align-items: center;
justify-content: center;
img {
width: 100%;
height: 100%;
object-fit: cover;
}
svg {
width: 0.32rem;
height: 0.32rem;
}
}
&__company-info {
display: flex;
flex-direction: column;
gap: 0.06rem;
}
&__company-name {
font-size: 0.18rem;
font-weight: 520;
color: $text-dark;
line-height: 0.24rem;
}
&__company-detail {
font-size: 0.14rem;
font-weight: 400;
color: $text-middle;
line-height: 0.19rem;
}
&__company-desc {
font-size: 0.14rem;
font-weight: 330;
color: $text-middle;
line-height: 0.24rem;
}
}
/* 抽屉动画 */
.agent-job-drawer-enter-active,
.agent-job-drawer-leave-active {
transition: opacity 0.3s ease;
.agent-job-drawer {
transition: transform 0.3s ease;
}
}
.agent-job-drawer-enter-from,
.agent-job-drawer-leave-to {
opacity: 0;
.agent-job-drawer {
transform: translateX(100%);
}
}
@@ -1,185 +1,394 @@
@use '../variables' as *;
// ==================== Agent设置面板样式(精简版 ====================
// ==================== Agent设置面板样式(重新设计 ====================
.agent-setting-panel {
height: 100%;
background: $bg-middle;
border-radius: 0.12rem;
position: relative;
width: 3.60rem;
height: var(--app-height, 100vh);
background: #FFFFFF;
font-size: 0.14rem;
overflow-y: auto;
// 隐藏滚动条
scrollbar-width: none;
-ms-overflow-style: none;
&::-webkit-scrollbar { display: none; }
// 内容区域
&__body {
padding: 0.28rem 0.24rem;
// 头部标题区
&__header {
padding: 0.24rem 0.24rem 0;
}
// 每个设置区块
&__title {
font-size: 0.20rem;
font-weight: 630;
line-height: 0.27rem;
color: #1A1A1A;
}
&__subtitle {
margin-top: 0.04rem;
font-size: 0.14rem;
font-weight: 330;
line-height: 0.19rem;
color: #6B7280;
}
// 分隔线
&__divider {
width: 3.12rem;
height: 1px;
margin: 0.24rem auto;
background: #F0F0F0;
}
// 通用区块
&__section {
margin-bottom: 0.28rem;
&:last-child {
margin-bottom: 0;
}
padding: 0 0.24rem;
margin-bottom: 0.08rem;
}
// 区块头部(标题 + 编辑按钮)
// 区块头部
&__section-header {
display: flex;
align-items: center;
gap: 0.1rem;
margin-bottom: 0.12rem;
justify-content: space-between;
margin-bottom: 0.08rem;
}
// 区块标题
&__section-title {
font-size: 0.16rem;
font-weight: 700;
color: $text-dark;
font-weight: 520;
line-height: 0.21rem;
color: #1A1A1A;
}
// 编辑按钮
&__edit-btn {
font-size: 0.13rem;
display: flex;
align-items: center;
gap: 0.04rem;
font-size: 0.14rem;
font-weight: 450;
color: $accent;
cursor: pointer;
white-space: nowrap;
svg {
width: 0.14rem;
height: 0.14rem;
}
&:hover {
opacity: 0.7;
}
}
// 个人资料信息
&__profile-info {
padding-left: 0.02rem;
}
&__profile-name {
font-size: 0.18rem;
font-weight: 600;
color: $text-dark;
margin-bottom: 0.04rem;
}
&__profile-sub {
font-size: 0.13rem;
// 个人信息文字
&__info-text {
font-size: 0.14rem;
font-weight: 330;
line-height: 0.19rem;
color: $text-middle;
}
// 求职目标标签
&__goal-tags {
display: flex;
flex-wrap: wrap;
gap: 0.08rem;
// 求职偏好内容
&__goal-content {
font-size: 0.14rem;
font-weight: 330;
line-height: 0.24rem;
color: $text-middle;
p {
margin: 0;
}
}
&__goal-tag {
padding: 0.06rem 0.14rem;
border: 1px solid $accent;
border-radius: 0.16rem;
font-size: 0.13rem;
color: $accent;
background: transparent;
}
// 空状态文字
// 空状态
&__empty-text {
font-size: 0.13rem;
font-size: 0.14rem;
color: $text-light;
}
// 简历选择下拉
&__resume-select {
width: 100%;
margin-top: 0.06rem;
.el-input__wrapper {
border-radius: 0.08rem;
}
}
// 投递偏好项
&__pref-item {
// 简历下拉
&__resume-dropdown {
display: flex;
align-items: flex-start;
align-items: center;
justify-content: space-between;
padding: 0.12rem 0;
padding: 0.08rem 0.12rem;
margin-top: 0.08rem;
background: #F3F4F6;
border-radius: 0.08rem;
cursor: pointer;
}
& + & {
border-top: none;
&__resume-name {
font-size: 0.14rem;
font-weight: 450;
color: $text-middle;
}
&__resume-arrow {
width: 0.14rem;
height: 0.14rem;
transition: transform 0.2s;
&--open {
transform: rotate(180deg);
}
}
&__pref-left {
display: flex;
align-items: flex-start;
gap: 0.1rem;
flex: 1;
min-width: 0;
&__resume-options {
margin-top: 0.04rem;
background: #FFFFFF;
border: 1px solid #F0F0F0;
border-radius: 0.08rem;
box-shadow: 0 0.02rem 0.08rem rgba(0, 0, 0, 0.06);
overflow: hidden;
}
// 勾选图标
&__pref-check {
width: 0.2rem;
height: 0.2rem;
flex-shrink: 0;
color: $text-light;
margin-top: 0.02rem;
&__resume-option {
padding: 0.08rem 0.12rem;
font-size: 0.14rem;
color: $text-dark;
cursor: pointer;
svg {
width: 100%;
height: 100%;
&:hover {
background: #F6FCFC;
}
&--active {
color: $text-dark;
color: $accent;
background: #F6FCFC;
}
}
// 偏好文字
&__pref-text {
// 开关项
&__switch-item {
display: flex;
align-items: center;
justify-content: space-between;
padding: 0.16rem 0;
}
&__switch-text {
display: flex;
flex-direction: column;
gap: 0.03rem;
gap: 0.04rem;
}
&__pref-label {
&__switch-label {
font-size: 0.14rem;
font-weight: 500;
color: $text-dark;
font-weight: 450;
line-height: 0.19rem;
color: #1A1A1A;
}
&__pref-desc {
&__switch-desc {
font-size: 0.12rem;
color: $text-light;
line-height: 1.4;
font-weight: 330;
line-height: 0.16rem;
color: $text-middle;
}
// 浏览器按钮
// 自定义开关
&__toggle {
position: relative;
width: 0.42rem;
height: 0.24rem;
background: #F3F4F6;
border-radius: 0.12rem;
cursor: pointer;
transition: background 0.2s;
flex-shrink: 0;
&--on {
background: $accent;
.agent-setting-panel__toggle-dot {
left: 0.20rem;
}
}
}
&__toggle-dot {
position: absolute;
width: 0.18rem;
height: 0.18rem;
left: 0.04rem;
top: 0.03rem;
background: #FFFFFF;
border-radius: 50%;
transition: left 0.2s;
}
// 浏览器插件按钮
&__browser-btns {
display: flex;
gap: 0.1rem;
margin-top: 0.08rem;
gap: 0.16rem;
margin-top: 0.12rem;
}
&__browser-btn {
padding: 0.08rem 0.2rem;
background: $bg-white;
border: 1px solid $border-color;
border-radius: 0.2rem;
font-size: 0.13rem;
color: $text-dark;
box-sizing: border-box;
display: flex;
align-items: center;
gap: 0.04rem;
padding: 0.12rem 0.16rem;
background: #FFFFFF;
border: 1px solid #F0F0F0;
border-radius: 0.08rem;
font-size: 0.14rem;
font-weight: 450;
color: $text-middle;
cursor: pointer;
transition: all 0.2s ease;
transition: border-color 0.2s;
svg {
width: 0.16rem;
height: 0.16rem;
}
&:hover {
border-color: $accent;
color: $accent;
}
&--active {
border-color: $accent;
}
}
// ==================== 编辑弹窗 ====================
&__edit-overlay {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.3);
z-index: 2000;
display: flex;
align-items: flex-start;
justify-content: flex-end;
padding-top: 1.20rem;
padding-right: 0.30rem;
}
&__edit-dialog {
box-sizing: border-box;
display: flex;
flex-direction: column;
align-items: flex-start;
padding: 0.24rem 0.32rem;
gap: 0.24rem;
width: 4.80rem;
background: linear-gradient(180deg, #EDF9FA 0%, #FFFFFF 20.63%);
border: 1px solid #F0F0F0;
box-shadow: 0 0 0.16rem rgba(0, 0, 0, 0.05);
border-radius: 0.12rem;
font-size: 0.14rem;
}
&__edit-dialog-header {
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
}
&__edit-dialog-title {
font-size: 0.18rem;
font-weight: 520;
line-height: 0.24rem;
color: #1A1A1A;
}
&__edit-dialog-close {
width: 0.24rem;
height: 0.24rem;
cursor: pointer;
&:hover {
opacity: 0.6;
}
}
&__edit-dialog-body {
width: 100%;
display: flex;
flex-direction: column;
gap: 0.16rem;
}
&__edit-row {
display: flex;
gap: 0.08rem;
}
&__edit-field {
display: flex;
flex-direction: column;
gap: 0.08rem;
flex: 1;
&--full {
width: 100%;
}
}
&__edit-label {
font-size: 0.14rem;
font-weight: 330;
line-height: 0.19rem;
color: $text-middle;
}
&__edit-input {
box-sizing: border-box;
width: 100%;
padding: 0.08rem 0.16rem;
background: #FFFFFF;
border: 1px solid #AEE6EA;
border-radius: 0.08rem;
font-size: 0.14rem;
font-weight: 330;
line-height: 0.19rem;
color: #1A1A1A;
outline: none;
transition: border-color 0.2s;
&:focus {
border-color: $accent;
}
&::placeholder {
color: $text-light;
}
}
&__edit-city {
width: 100%;
}
&__edit-dialog-save {
width: 100%;
padding: 0.12rem 0.16rem;
background: $accent;
border: none;
border-radius: 0.08rem;
font-size: 0.14rem;
font-weight: 450;
line-height: 0.19rem;
color: #FFFFFF;
cursor: pointer;
transition: opacity 0.2s;
&:hover {
opacity: 0.85;
}
&:disabled {
opacity: 0.5;
cursor: not-allowed;
}
}
}
@@ -0,0 +1,220 @@
@use '../variables' as *;
/* 投递任务抽屉 — 从浏览器右侧弹出 */
/* 遮罩层 */
.agent-task-drawer-mask {
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: var(--app-height, 100vh);
background: rgba(0, 0, 0, 0.3);
z-index: 2000;
display: flex;
justify-content: flex-end;
}
/* 抽屉主体 */
.agent-task-drawer {
width: 6.4rem;
height: var(--app-height, 100vh);
background: $bg-white;
display: flex;
flex-direction: column;
font-size: 0.14rem;
box-shadow: -4px 0 20px rgba(0, 0, 0, 0.08);
/* 顶部标题栏 */
&__header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 0.2rem 0.24rem;
height: 0.64rem;
box-sizing: border-box;
}
&__header-left {
display: flex;
align-items: center;
gap: 0.16rem;
}
/* 关闭按钮 */
&__close {
width: 0.24rem;
height: 0.24rem;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
}
&__close-icon {
width: 0.24rem;
height: 0.24rem;
color: $text-middle;
}
/* 标题文字 */
&__title {
font-size: 0.18rem;
font-weight: 520;
color: $text-dark;
line-height: 0.24rem;
}
/* Tab 切换按钮区域 */
&__tabs {
display: flex;
align-items: flex-start;
gap: 0.16rem;
padding: 0 0.24rem 0.2rem;
}
&__tab {
display: flex;
align-items: center;
padding: 0.08rem 0.12rem;
gap: 0.04rem;
border-radius: 0.08rem;
font-size: 0.14rem;
font-weight: 450;
line-height: 0.19rem;
cursor: pointer;
border: 1px solid #F0F0F0;
background: $bg-white;
color: $text-middle;
transition: all 0.2s;
&--active {
background: $accent;
color: $bg-white;
border-color: $accent;
}
}
/* 列表内容区域 */
&__body {
flex: 1;
overflow-y: auto;
padding: 0 0.24rem 0.2rem;
display: flex;
flex-direction: column;
gap: 0.16rem;
}
/* 空状态 */
&__empty {
text-align: center;
color: $text-light;
font-size: 0.14rem;
padding: 0.4rem 0;
}
/* 岗位卡片 */
&__card {
display: flex;
align-items: center;
justify-content: space-between;
padding: 0.16rem 0.2rem;
background: $bg-white;
border: 1px solid #F0F0F0;
border-radius: 0.08rem;
box-sizing: border-box;
}
&__card-info {
flex: 1;
min-width: 0;
display: flex;
flex-direction: column;
gap: 0.12rem;
}
/* 岗位标题 */
&__card-title {
font-size: 0.18rem;
font-weight: 520;
color: $text-dark;
line-height: 0.27rem;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
/* 公司信息行 */
&__card-company {
display: flex;
align-items: center;
gap: 0.08rem;
font-size: 0.18rem;
font-weight: 330;
color: $text-dark;
line-height: 0.27rem;
}
&__card-logo {
width: 0.24rem;
height: 0.24rem;
border-radius: 0.04rem;
object-fit: cover;
flex-shrink: 0;
}
&__card-logo-placeholder {
width: 0.24rem;
height: 0.24rem;
color: $text-light;
flex-shrink: 0;
}
/* 移出任务按钮 */
&__remove-btn {
display: flex;
align-items: center;
padding: 0.08rem 0.12rem;
gap: 0.04rem;
border: 1px solid $accent;
border-radius: 0.08rem;
background: $bg-white;
font-size: 0.14rem;
font-weight: 450;
color: $accent;
line-height: 0.19rem;
cursor: pointer;
white-space: nowrap;
transition: all 0.2s;
flex-shrink: 0;
&:hover {
background: $accent;
color: $bg-white;
}
&:disabled {
opacity: 0.5;
cursor: not-allowed;
}
}
}
/* 抽屉动画 */
.agent-task-drawer-enter-active,
.agent-task-drawer-leave-active {
transition: opacity 0.3s ease;
.agent-task-drawer {
transition: transform 0.3s ease;
}
}
.agent-task-drawer-enter-from,
.agent-task-drawer-leave-to {
opacity: 0;
.agent-task-drawer {
transform: translateX(100%);
}
}
+3 -3
View File
@@ -42,7 +42,7 @@
&__name {
font-size: 0.15rem;
font-weight: 520;
font-weight: 620;
line-height: 0.22rem;
color: $text-dark;
}
@@ -99,7 +99,7 @@
&__welcome-title {
font-size: 0.14rem;
font-weight: 520;
font-weight: 620;
line-height: 0.16rem;
color: $text-dark;
}
@@ -299,7 +299,7 @@
&__topics-title {
font-size: 0.14rem;
font-weight: 520;
font-weight: 620;
line-height: 0.19rem;
color: #52CAD1;
}
+81 -101
View File
@@ -1,145 +1,125 @@
@use '../variables' as *;
// ==================== 求职偏好弹窗样式(重新设计) ====================
// 遮罩层 — 右上角定位
.job-goal-dialog__overlay {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.3);
z-index: 2000;
display: flex;
align-items: flex-start;
justify-content: flex-end;
padding-top: 1.20rem;
padding-right: 0.30rem;
}
.job-goal-dialog {
.el-dialog__header {
display: none;
}
.el-dialog__body {
padding: 0;
}
box-sizing: border-box;
display: flex;
flex-direction: column;
align-items: flex-start;
padding: 0.24rem 0.32rem;
gap: 0.24rem;
width: 4.80rem;
background: linear-gradient(180deg, #EDF9FA 0%, #FFFFFF 20.63%);
border: 1px solid #F0F0F0;
box-shadow: 0 0 0.16rem rgba(0, 0, 0, 0.05);
border-radius: 0.12rem;
font-size: 0.14rem;
// 头部
&__header {
display: flex;
align-items: center;
gap: 0.12rem;
padding: 0.2rem 0.24rem 0.16rem;
}
&__close-btn {
background: none;
border: none;
cursor: pointer;
color: $text-dark;
font-size: 0.16rem;
display: flex;
align-items: center;
justify-content: center;
padding: 0.04rem;
border-radius: 0.04rem;
transition: background 0.2s;
&:hover {
background: $bg-main;
}
justify-content: space-between;
width: 100%;
}
&__title {
font-size: 0.16rem;
font-weight: 700;
color: $text-dark;
font-size: 0.18rem;
font-weight: 520;
line-height: 0.24rem;
color: #1A1A1A;
}
&__close-btn {
width: 0.24rem;
height: 0.24rem;
cursor: pointer;
&:hover {
opacity: 0.6;
}
}
// 表单区块
&__section {
padding: 0.12rem 0.24rem;
width: 100%;
display: flex;
flex-direction: column;
gap: 0.08rem;
}
&__label {
font-size: 0.14rem;
font-weight: 600;
color: $text-dark;
margin-bottom: 0.12rem;
}
&__tags {
display: flex;
flex-wrap: wrap;
gap: 0.08rem;
margin-bottom: 0.1rem;
}
&__tag {
display: inline-flex;
align-items: center;
gap: 0.06rem;
background: $bg-main;
border: 1px solid $border-color;
border-radius: 0.16rem;
padding: 0.05rem 0.12rem;
font-size: 0.13rem;
color: $text-dark;
}
&__tag-close {
cursor: pointer;
font-size: 0.12rem;
color: $text-light;
transition: color 0.2s;
&:hover {
color: $danger;
}
}
&__select {
width: 100%;
.el-select__wrapper {
background: $bg-main;
border-radius: 0.08rem;
box-shadow: none;
border: 1px solid $border-color;
}
font-weight: 330;
line-height: 0.19rem;
color: $text-middle;
}
// 招聘类型按钮组
&__type-group {
display: flex;
gap: 0.12rem;
gap: 0.10rem;
}
&__type-btn {
flex: 1;
padding: 0.1rem 0;
border: 1px solid $border-color;
border-radius: 0.2rem;
background: $bg-white;
color: $text-dark;
font-size: 0.13rem;
display: flex;
align-items: center;
justify-content: center;
padding: 0.08rem 0.16rem;
width: 0.96rem;
height: 0.35rem;
background: #F3F4F6;
border: none;
border-radius: 0.08rem;
font-size: 0.14rem;
font-weight: 330;
color: #1A1A1A;
cursor: pointer;
transition: all 0.2s;
&:hover {
border-color: $text-light;
opacity: 0.8;
}
&--active {
background: $btn-dark;
border-color: $btn-dark;
color: $bg-white;
font-weight: 500;
background: $accent;
color: #FFFFFF;
}
}
&__footer {
padding: 0.3rem 0.24rem 0.24rem;
display: flex;
justify-content: center;
}
// 保存按钮
&__save-btn {
width: 100%;
padding: 0.12rem 0;
padding: 0.12rem 0.16rem;
background: $accent;
color: $bg-white;
border: none;
border-radius: 0.24rem;
font-size: 0.16rem;
font-weight: 600;
border-radius: 0.08rem;
font-size: 0.14rem;
font-weight: 450;
line-height: 0.19rem;
color: #FFFFFF;
cursor: pointer;
transition: background 0.2s;
transition: opacity 0.2s;
&:hover {
background: $accent-hover;
opacity: 0.85;
}
}
}
@@ -524,7 +524,7 @@
&__gap-item-title {
font-size: 0.14rem;
font-weight: 520;
font-weight: 620;
color: $text-dark;
line-height: 0.19rem;
margin-bottom: 0.04rem;
@@ -58,7 +58,7 @@
}
&__title {
font-weight: 520;
font-weight: 620;
font-size: 0.18rem;
line-height: 0.24rem;
color: $text-dark;
@@ -196,7 +196,7 @@
font-size: 0.1rem;
padding: 0.02rem 0.08rem;
border-radius: 0.08rem;
font-weight: 520;
font-weight: 620;
}
&__plan-name {
@@ -360,7 +360,7 @@
}
&__payment-text {
font-weight: 520;
font-weight: 620;
font-size: 0.12rem;
line-height: 0.18rem;
@@ -69,7 +69,7 @@
}
&__stat-num {
font-weight: 520;
font-weight: 620;
font-size: 0.24rem;
line-height: 0.32rem;
background: linear-gradient(128.17deg, #52CAD1 0%, #82D79B 100%);
@@ -107,7 +107,7 @@
}
&__section-text {
font-weight: 520;
font-weight: 620;
font-size: 0.16rem;
line-height: 0.21rem;
background: linear-gradient(128.17deg, #52CAD1 0%, #82D79B 100%);
@@ -159,7 +159,7 @@
}
&__reason-title {
font-weight: 520;
font-weight: 620;
font-size: 0.14rem;
line-height: 0.19rem;
color: $text-dark;
@@ -195,7 +195,7 @@
}
&__direction-name {
font-weight: 520;
font-weight: 620;
font-size: 0.14rem;
line-height: 0.19rem;
color: $text-dark;
@@ -234,7 +234,7 @@
background: linear-gradient(128.17deg, #52CAD1 0%, #82D79B 100%);
border-radius: 0.12rem;
border: none;
font-weight: 520;
font-weight: 620;
font-size: 0.14rem;
line-height: 0.19rem;
color: $bg-white;
@@ -383,7 +383,7 @@
}
&__title {
font-weight: 520;
font-weight: 620;
font-size: 0.18rem;
line-height: 0.24rem;
color: #1A1A1A;
@@ -218,7 +218,7 @@
&__mcard-title {
font-size: 0.18rem;
font-weight: 520;
font-weight: 620;
color: #FFFFFF;
line-height: 0.24rem;
@@ -242,7 +242,7 @@
&__mcard-remain-days {
font-size: 0.18rem;
font-weight: 520;
font-weight: 620;
color: #FFFFFF;
line-height: 0.24rem;
}
@@ -328,7 +328,7 @@
&__feedback-label {
font-size: 0.14rem;
font-weight: 520;
font-weight: 620;
color: #1A1A1A;
line-height: 0.19rem;
}
@@ -44,7 +44,7 @@
&__title {
font-size: 0.18rem;
font-weight: 520;
font-weight: 620;
line-height: 0.24rem;
color: $text-dark;
margin: 0;
@@ -217,7 +217,7 @@
span {
font-size: 0.14rem;
font-weight: 520;
font-weight: 620;
line-height: 0.19rem;
text-align: center;
color: #FFFFFF;
+6 -6
View File
@@ -112,7 +112,7 @@
border-radius: 0.04rem;
font-family: 'MiSans';
font-style: normal;
font-weight: 520;
font-weight: 620;
font-size: 0.10rem;
line-height: 0.13rem;
text-align: center;
@@ -212,7 +212,7 @@
flex-shrink: 0;
span:first-child {
font-weight: 520;
font-weight: 620;
font-size: 0.18rem;
line-height: 0.24rem;
color: $text-dark;
@@ -284,7 +284,7 @@
}
.side-nav__message-list-title {
font-weight: 520;
font-weight: 620;
font-size: 0.14rem;
line-height: 0.19rem;
color: $text-dark;
@@ -524,7 +524,7 @@
.side-nav__referral-value {
font-size: 0.10rem;
font-weight: 520;
font-weight: 620;
color: #52CAD1;
line-height: 0.13rem;
}
@@ -564,7 +564,7 @@
.side-nav__referral-action {
font-size: 0.11rem;
font-weight: 520;
font-weight: 620;
color: #52CAD1;
line-height: 0.15rem;
text-align: center;
@@ -616,7 +616,7 @@
padding: 0.02rem 0.04rem;
border-radius: 0.04rem;
font-size: 0.10rem;
font-weight: 520;
font-weight: 620;
line-height: 0.13rem;
width: fit-content;
@@ -49,7 +49,7 @@
}
.step-progress-overlay__title {
font-weight: 520;
font-weight: 620;
font-size: 0.18rem;
line-height: 0.24rem;
color: $text-dark;
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -227,7 +227,7 @@
&__match-label {
font-size: 0.13rem;
font-weight: 520;
font-weight: 620;
line-height: 0.17rem;
color: #9FD051;
}
+4 -4
View File
@@ -334,7 +334,7 @@
&__job-name {
font-size: 0.18rem;
font-weight: 520;
font-weight: 620;
color: #000000;
line-height: 0.24rem;
}
@@ -665,7 +665,7 @@
&__match-score {
font-size: 0.18rem;
font-weight: 520;
font-weight: 620;
line-height: 0.62rem;
position: absolute;
top: 0;
@@ -677,7 +677,7 @@
&__match-level {
font-size: 0.13rem;
font-weight: 520;
font-weight: 620;
line-height: 0.19rem;
margin-top: 0.04rem;
}
@@ -843,7 +843,7 @@
&__apply-method-title {
position: relative;
font-size: 0.18rem;
font-weight: 520;
font-weight: 620;
color: $text-dark;
text-align: center;
margin: 0 0 0.2rem 0;