@use '../variables' as *; // ==================== 岗位详情页 ==================== .job-detail { &__content { margin-left: 2rem; margin-right: var(--chat-width, 4.0rem); flex: 1; padding: 0.12rem 0.12rem 0.12rem 0.12rem; height: var(--app-height, 100vh); box-sizing: border-box; overflow: hidden; background: $bg-main; display: flex; flex-direction: column; font-size: 0.14rem; // 手动包裹的两层 div,需要撑满剩余高度并允许内部滚动 > .bg-white { flex: 1; min-height: 0; display: flex; flex-direction: column; overflow: hidden; > .bg-main { flex: 1; min-height: 0; display: flex; flex-direction: column; overflow: hidden; } } } // ---- 页面标题 ---- &__header { margin-bottom: 0; } &__page-title { font-size: 0.24rem; font-weight: 700; color: $text-dark; margin: 0; line-height: 1.1; } &__page-subtitle { font-size: 0.13rem; color: $text-light; margin: 0.02rem 0 0 0; } // ---- Tab 切换 ---- &__tabs { display: inline-flex; align-items: center; gap: 0.04rem; margin: 0.1rem 0 0.16rem 0; background: $bg-white; border-radius: 0.22rem; padding: 0.04rem; } &__tab { font-size: 0.13rem; color: $text-light; cursor: pointer; padding: 0.06rem 0.22rem; border-radius: 0.18rem; transition: all 0.25s ease; user-select: none; font-weight: 500; &:hover { color: $text-dark; background: $theme-color; } &--active { background: $accent; color: $bg-white; font-weight: 600; box-shadow: 0 0.02rem 0.08rem rgba(79, 194, 201, 0.3); &:hover { background: $accent-hover; color: $bg-white; } } } // ---- 顶部操作栏 ---- &__toolbar { display: flex; align-items: center; justify-content: space-between; margin-bottom: 0.14rem; } &__close-btn { width: 0.32rem; height: 0.32rem; border-radius: 50%; border: 1px solid $border-color; background: $bg-white; color: $text-dark; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: all 0.2s; &:hover { background: $theme-color; border-color: $accent; color: $accent; } } &__close-icon { width: 0.14rem; height: 0.14rem; } &__toolbar-right { display: flex; align-items: center; gap: 0.1rem; } &__tool-btn { width: 0.32rem; height: 0.32rem; border-radius: 50%; border: 1px solid $border-color; background: $bg-white; color: $text-light; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: all 0.2s; &:hover { color: $accent; border-color: $accent; background: $theme-color; } } &__tool-icon { width: 0.14rem; height: 0.14rem; } &__apply-btn { background: $accent; color: $bg-white; border: none; border-radius: 0.2rem; padding: 0.07rem 0.22rem; font-size: 0.13rem; font-weight: 500; cursor: pointer; transition: background 0.2s; &:hover { background: $btn-dark-hover; } } // ---- 内容区域 ---- &__body { flex: 1; overflow-y: auto; display: flex; flex-direction: column; gap: 0.14rem; padding-bottom: 0.4rem; padding-right: 0.05rem; } // ---- 导航 Tab ---- &__nav-tabs { display: flex; align-items: center; gap: 0.2rem; margin-bottom: 0.04rem; } &__nav-tab { font-size: 0.16rem; font-weight: 600; color: $text-light; cursor: pointer; padding-bottom: 0.06rem; border-bottom: 2px solid transparent; transition: all 0.2s; &:hover { color: $text-dark; } &--active { color: $text-dark; border-bottom-color: $text-dark; } } &__nav-tab-right { margin-left: auto; display: flex; align-items: center; gap: 0.16rem; padding-right: 0.05rem; } &__link-btn { font-size: 0.12rem; color: $text-light; cursor: pointer; transition: color 0.2s; &:hover { color: $accent; } } // ---- 卡片 ---- &__card { background: $bg-white; border-radius: 0.12rem; padding: 0.22rem 0.24rem; } &__card-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 0.3rem; } &__card-left { flex: 1; min-width: 0; } // ---- 公司 & 职位头部 ---- &__company-row { display: flex; align-items: center; gap: 0.1rem; margin-bottom: 0.1rem; } &__company-icon { width: 0.36rem; height: 0.36rem; border-radius: 0.08rem; background: $theme-color; display: flex; align-items: center; justify-content: center; border: 1px solid $border-color; flex-shrink: 0; } &__company-svg { width: 0.2rem; height: 0.2rem; color: $accent; } &__company-name { font-size: 0.15rem; font-weight: 600; color: $text-dark; } &__job-title { font-size: 0.2rem; font-weight: 700; color: $text-dark; margin: 0 0 0.1rem 0; } &__job-meta { display: flex; align-items: center; gap: 0.2rem; flex-wrap: wrap; } &__meta-item { display: flex; align-items: center; gap: 0.05rem; font-size: 0.12rem; color: $text-light; } &__meta-icon { width: 0.14rem; height: 0.14rem; color: $text-light; flex-shrink: 0; } // ---- 匹配度 ---- &__match-area { display: flex; flex-direction: column; align-items: center; flex-shrink: 0; } &__match-ring { position: relative; width: 0.72rem; height: 0.72rem; display: flex; align-items: center; justify-content: center; } &__ring-svg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } &__match-score { font-size: 0.18rem; font-weight: 700; color: $accent-hover; position: relative; z-index: 1; } &__match-label { font-size: 0.1rem; color: $text-light; margin-top: 0.04rem; } &__match-details { display: flex; align-items: center; gap: 0.12rem; margin-top: 0.12rem; } &__match-item { display: flex; flex-direction: column; align-items: center; gap: 0.03rem; } &__match-mini-ring { position: relative; width: 0.4rem; height: 0.4rem; display: flex; align-items: center; justify-content: center; } &__mini-ring-svg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } &__mini-score { font-size: 0.1rem; font-weight: 600; color: $text-dark; position: relative; z-index: 1; } &__match-item-label { font-size: 0.09rem; color: $text-light; white-space: nowrap; } // ---- 优化简历提示条 ---- &__optimize-bar { display: flex; align-items: center; justify-content: space-between; background: linear-gradient(90deg, #94EF9E , #53D9C8 ); color: $bg-white; border-radius: 0.1rem; padding: 0.14rem 0.2rem; font-size: 0.13rem; } &__optimize-btn { background: $bg-white; color: $text-dark; border: none; border-radius: 0.06rem; padding: 0.07rem 0.18rem; font-size: 0.12rem; font-weight: 500; cursor: pointer; transition: all 0.2s; white-space: nowrap; &:hover { background: $theme-color; color: $accent-hover; } } // ---- 描述文本 ---- &__desc-text { font-size: 0.13rem; color: $text-dark; line-height: 1.8; margin: 0 0 0.12rem 0; } // ---- 标签 ---- &__tag-list { display: flex; flex-wrap: wrap; gap: 0.08rem; } &__tag { font-size: 0.12rem; color: $text-dark; background: $bg-main; border: 1px solid $border-color; border-radius: 0.04rem; padding: 0.04rem 0.14rem; transition: all 0.2s; &:hover { border-color: $accent; color: $accent; background: $theme-color; } } // ---- 区块标题 ---- &__section-title { font-size: 0.17rem; font-weight: 700; color: $text-dark; margin: 0 0 0.14rem 0; } &__section-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 0.14rem; .job-detail__section-title { margin-bottom: 0; } } &__skill-hint { display: flex; align-items: center; gap: 0.04rem; font-size: 0.11rem; color: $text-light; } &__hint-icon { width: 0.12rem; height: 0.12rem; flex-shrink: 0; } // ---- 技能标签 ---- &__skill-tags { display: flex; flex-wrap: wrap; gap: 0.08rem; margin-bottom: 0.16rem; } &__skill-tag { display: inline-flex; align-items: center; gap: 0.04rem; font-size: 0.12rem; color: $text-dark; background: $bg-main; border: 1px solid $border-color; border-radius: 0.2rem; padding: 0.05rem 0.14rem; transition: all 0.2s; &--matched { background: $theme-color; border-color: $accent; color: $accent-hover; } } &__skill-close { width: 0.1rem; height: 0.1rem; color: $accent; cursor: pointer; } // ---- 列表 ---- &__list { font-size: 0.13rem; color: $text-dark; line-height: 2; margin: 0; padding-left: 0.2rem; li { padding-left: 0.04rem; } } // ---- 公司信息 ---- &__company-info { display: flex; gap: 0.4rem; } &__company-info-left { flex: 1; min-width: 0; } &__company-header { display: flex; align-items: center; gap: 0.1rem; margin-bottom: 0.12rem; } &__company-logo { width: 0.36rem; height: 0.36rem; border-radius: 50%; background: $bg-main; display: flex; align-items: center; justify-content: center; border: 1px solid $border-color; flex-shrink: 0; } &__company-info-name { font-size: 0.16rem; font-weight: 600; color: $text-dark; } &__company-desc { font-size: 0.12rem; color: $text-dark; line-height: 1.8; margin: 0; } &__company-info-right { flex-shrink: 0; display: flex; flex-direction: column; gap: 0.08rem; max-width: 45%; } &__company-meta-item { font-size: 0.12rem; color: $text-dark; line-height: 1.6; } &__meta-label { color: $text-light; } &__company-link { color: $accent; text-decoration: none; transition: color 0.2s; &:hover { color: $accent-hover; text-decoration: underline; } } // ---- 融资 ---- &__funding-label { font-weight: 600; color: $text-dark; } // ---- 最新动态 ---- &__news-list { display: flex; gap: 0.14rem; } &__news-item { flex: 1; background: $bg-main; border: 1px solid $border-color; border-radius: 0.08rem; padding: 0.14rem 0.16rem; transition: all 0.2s; &:hover { border-color: $accent; background: $theme-color; } } &__news-title { font-size: 0.13rem; font-weight: 600; color: $text-dark; margin: 0 0 0.06rem 0; } &__news-desc { font-size: 0.11rem; color: $text-middle; line-height: 1.6; margin: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } }