@use '../variables' as *; // ==================== 校招公告详情页 ==================== .announcement-detail { font-size: 0.14rem; width: 100%; height: var(--app-height, 100vh); overflow: hidden; min-width: 12.8rem; // 主内容区(与 JobDetail 一致,通过 margin-left 避开侧边栏) &__content { margin-left: var(--nav-width, 2.2rem); flex: 1; height: var(--app-height, 100vh); box-sizing: border-box; overflow: hidden; background: $bg-main; display: flex; flex-direction: column; font-size: 0.14rem; } // 页面标题 &__page-title { font-size: 0.18rem; font-weight: 600; color: $text-dark; line-height: 0.24rem; } &__page-subtitle { font-size: 0.12rem; color: $text-middle; line-height: 0.16rem; } // 返回按钮行 &__back-row { padding: 0 0.24rem; margin-bottom: 0.12rem; } &__back-btn { display: flex; align-items: center; gap: 0.04rem; background: none; border: none; cursor: pointer; font-size: 0.14rem; color: $text-middle; padding: 0; &:hover { color: $accent; } } &__back-icon { width: 0.16rem; height: 0.16rem; } // 主体内容可滚动区域 &__body { flex: 1; overflow-y: auto; padding: 0 0.24rem 0.24rem; } // 两列布局(公司卡片下方) &__layout { display: flex; gap: 0.12rem; align-items: flex-start; } // 左侧主详情 &__left { flex: 1; min-width: 0; background: #fff; padding: 0.24rem 0.32rem; border-radius: 0.08rem; } // 右侧边栏 &__right { width: 4.24rem; flex-shrink: 0; } } // ==================== 顶部公司信息卡片(独占一行) ==================== .announcement-detail__company-card { display: flex; justify-content: space-between; align-items: center; padding: 0.24rem 0.32rem; background: $bg-white; border: 1px solid #F0F0F0; box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.04); border-radius: 0.08rem; margin-bottom: 0.12rem; } .announcement-detail__company-left { display: flex; align-items: center; gap: 0.16rem; } .announcement-detail__company-logo { width: 0.66rem; height: 0.66rem; border-radius: 50%; object-fit: cover; flex-shrink: 0; &--default { display: flex; align-items: center; justify-content: center; background: #EDF9FA; } } .announcement-detail__company-info { display: flex; flex-direction: column; gap: 0.12rem; } .announcement-detail__company-name-row { display: flex; align-items: center; gap: 0.16rem; } .announcement-detail__company-name { font-size: 0.24rem; font-weight: 600; color: $text-dark; line-height: 0.32rem; } .announcement-detail__company-tags { display: flex; align-items: flex-start; gap: 0.12rem; } .announcement-detail__tag { display: inline-flex; align-items: center; justify-content: center; padding: 0.03rem 0.06rem; font-size: 0.12rem; line-height: 0.16rem; border-radius: 0.04rem; &--type { background: #FEF3F2; color: #B42318; } &--gray { background: #F3F4F6; color: $text-middle; } } .announcement-detail__company-right { display: flex; align-items: center; gap: 0.16rem; } .announcement-detail__btn-outline { box-sizing: border-box; display: flex; align-items: center; justify-content: center; padding: 0.08rem 0.16rem; font-size: 0.14rem; font-weight: 450; color: $accent; background: transparent; border: 1px solid $accent; border-radius: 0.08rem; cursor: pointer; white-space: nowrap; &:hover { background: #EDF9FA; } } .announcement-detail__btn-primary { box-sizing: border-box; display: flex; align-items: center; justify-content: center; padding: 0.08rem 0.16rem; font-size: 0.14rem; font-weight: 450; color: #FFFFFF; background: $accent; border: 1px solid $accent; border-radius: 0.08rem; cursor: pointer; white-space: nowrap; &:hover { background: $accent-hover; border-color: $accent-hover; } } // ==================== 岗位速览卡片 ==================== .announcement-detail__overview-card { display: flex; flex-direction: column; padding: 0.16rem 0.24rem; gap: 0.16rem; background: linear-gradient(180deg, #EDF9FA 0%, #FFFFFF 20.63%); border: 1px solid #AEE6EA; border-radius: 0.08rem; margin-bottom: 0.24rem; } .announcement-detail__overview-header { display: flex; justify-content: space-between; align-items: center; } .announcement-detail__overview-title-row { display: flex; align-items: flex-end; gap: 0.12rem; } .announcement-detail__overview-title { font-size: 0.16rem; font-weight: 600; color: $text-dark; line-height: 0.21rem; } .announcement-detail__overview-date { font-size: 0.12rem; font-weight: 330; color: $text-middle; line-height: 0.16rem; } .announcement-detail__overview-deadline { font-size: 0.14rem; font-weight: 380; color: $text-dark; line-height: 0.19rem; } .announcement-detail__overview-body { display: flex; gap: 0.24rem; } .announcement-detail__overview-fields { flex: 1; min-width: 0; display: flex; flex-direction: column; flex-wrap: wrap; } // 每行两个字段横排,align-items: stretch 保证同行等高 .announcement-detail__overview-row { display: flex; align-items: stretch; gap: 0.16rem; } .announcement-detail__overview-direction { flex-shrink: 0; display: flex; flex-direction: column; gap: 0.04rem; } .announcement-detail__overview-field { display: flex; flex-direction: column; gap: 0.04rem; } .announcement-detail__overview-label { font-size: 0.12rem; font-weight: 330; color: $text-middle; line-height: 0.16rem; } .announcement-detail__overview-value { font-size: 0.14rem; font-weight: 380; color: $text-dark; line-height: 0.19rem; } // ==================== 公告标题 ==================== .announcement-detail__main-title { font-size: 0.24rem; font-weight: 600; color: $text-dark; line-height: 0.32rem; margin-bottom: 0.24rem; } // ==================== 详情正文段落 ==================== .announcement-detail__section { margin-bottom: 0.16rem; } .announcement-detail__section-title { font-size: 0.18rem; font-weight: 600; color: $accent; line-height: 0.24rem; margin-bottom: 0.16rem; } .announcement-detail__section-content { font-size: 0.14rem; font-weight: 330; color: $text-dark; line-height: 0.19rem; white-space: pre-wrap; word-break: break-all; } // ==================== 右侧边栏卡片 ==================== .announcement-detail__aside-card { background: $bg-white; border: 1px solid #F0F0F0; box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.04); border-radius: 0.08rem; padding: 0.24rem 0.32rem; margin-bottom: 0.12rem; } .announcement-detail__aside-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 0.24rem; } .announcement-detail__aside-title { font-size: 0.18rem; font-weight: 600; color: $accent; line-height: 0.24rem; } .announcement-detail__aside-more { display: flex; align-items: center; gap: 0.04rem; font-size: 0.14rem; font-weight: 450; color: $text-middle; cursor: pointer; svg { width: 0.19rem; height: 0.19rem; } &:hover { color: $accent; } } .announcement-detail__aside-list { display: flex; flex-direction: column; gap: 0.16rem; } // ==================== 企业其他岗位列表项 ==================== .announcement-detail__job-item { position: relative; display: flex; align-items: flex-start; justify-content: space-between; padding-bottom: 0.16rem; } .announcement-detail__job-item-main { flex: 1; min-width: 0; } .announcement-detail__job-item-title { font-size: 0.16rem; font-weight: 600; color: $text-dark; line-height: 0.21rem; display: block; margin-bottom: 0.08rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 2.56rem; } .announcement-detail__job-item-tags { display: flex; align-items: center; gap: 0.08rem; } .announcement-detail__job-item-score { text-align: right; flex-shrink: 0; } .announcement-detail__job-item-score-num { display: block; font-size: 0.22rem; font-weight: 600; line-height: 0.29rem; } .announcement-detail__job-item-score-label { display: block; font-size: 0.12rem; font-weight: 450; line-height: 0.16rem; text-align: center; } .announcement-detail__job-divider { position: absolute; bottom: 0; left: 0; right: 0; height: 0; border-bottom: 1px solid #F0F0F0; } // ==================== 通用灰色chip ==================== .announcement-detail__chip { display: inline-flex; align-items: center; justify-content: center; padding: 0.03rem 0.06rem; background: #F3F4F6; border-radius: 0.04rem; font-size: 0.12rem; font-weight: 380; color: $text-middle; line-height: 0.16rem; white-space: nowrap; } // ==================== 校招推荐列表项 ==================== .announcement-detail__rec-item { display: flex; align-items: flex-start; gap: 0.1rem; position: relative; padding-bottom: 0.16rem; } .announcement-detail__rec-logo { width: 0.4rem; height: 0.4rem; border-radius: 50%; object-fit: cover; flex-shrink: 0; &--default { display: flex; align-items: center; justify-content: center; background: #EDF9FA; } } .announcement-detail__rec-info { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 0.04rem; } .announcement-detail__rec-company { font-size: 0.16rem; font-weight: 600; color: #111827; line-height: 0.21rem; } .announcement-detail__rec-positions { font-size: 0.14rem; font-weight: 330; color: $text-middle; line-height: 0.19rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .announcement-detail__rec-tags { display: flex; align-items: flex-start; gap: 0.04rem; }