/* 通用 UI 组件样式 */

/* 布局外层容器 */
.section-wrap { position: relative; padding: 0.5rem 0; background: url(../images/bgb.jpg) no-repeat center;background-size: cover;}
.section-inner { width: 100%; }

/* 标准分栏：侧边栏 35%，主内容区 58.5% */
.col-side { width: 35%; position: relative; }
.col-main { width: 58.5%; position: relative; }

/* 通用标题布局 */
.unit-title { margin-bottom: 0.4rem; position: relative; display: flex; align-items: center; }
.unit-title .ico { width: 0.64rem; height: 0.64rem; border-radius: 50%; text-align: center; margin-right: 0.1rem; position: relative; display: flex; align-items: center; justify-content: center; }
.unit-title .ico:after { border: 1px dashed var(--color); content: ''; position: absolute; left: 0; top: 0; right: 0; bottom: 0; border-radius: 50%; animation: roted linear 35s infinite; }
.unit-title .ico img { width: 0.35rem; position: relative; z-index: 1; }
.unit-title .h4 { position: relative; padding-bottom: 0.25rem; }
.unit-title .h4 span { display: block; }
.unit-title .h4 span.cn { font-size: 0.4rem; font-weight: bold; line-height: 1em; color: #333; }
.unit-title .h4 span.cn em { color: var(--color); font-style: normal; }
.unit-title .h4 span.en { color: #bbb; margin-top: 3px; text-transform: uppercase; position: absolute; left: 0; bottom: 0; white-space: nowrap; font-size: 0.14rem; }

@keyframes roted {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* 通用圆角卡片容器 */
.rounded-card { border-radius: 8px; overflow: hidden; box-shadow: 0 2px 10px rgba(0,0,0,0.05); }

/* 响应式分栏调整 */
@media (max-width: 900px) {
    .col-side, .col-main { width: 100% !important; }
    .col-side { margin-bottom: 0.4rem; }
    .unit-title .h4 span.cn { font-size: 0.36rem; }
}

/* 通用内容列表组件 (可复用于宣讲会、双选会等列表) */
.item-list { background: #fff; padding: 10px 16px; width: 100%; box-sizing: border-box; }
.list-item { display: flex; padding: 12px 0; border-bottom: 1px dotted #ccc; cursor: pointer; align-items: flex-start; text-decoration: none !important; transition: background 0.2s; }
.list-item:hover { background: #fcfcfc; }
.list-item:last-child { border-bottom: none; }

/* 列表项日期块 */
.item-date { width: 70px; flex-shrink: 0; margin-right: 15px; border: 1px solid #E4E4E4; text-align: center; overflow: hidden; margin-top: 2px; }
.item-date .day { height: 26px; line-height: 26px; background: #F5F5F5; color: #666; font-size: 16px; border-bottom: 1px solid #fff; }
.item-date .month { height: 26px; line-height: 26px; background: #E30011; color: #fff; font-size: 12px; }

/* 列表项Logo块 (仅在线招聘使用) */
.item-logo { height: 54px; display: flex; align-items: center; justify-content: center; background: #fff; padding: 2px; box-sizing: border-box; }
.item-logo img { max-width: 100%; max-height: 100%; object-fit: contain; }

/* 列表项内容区 */
.item-content { flex: 1; min-width: 0; }

/* 列表项头部：标题 + 标签 + 侧边附加信息 */
.item-row-top { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 6px; }
.item-title-wrap { flex: 1; min-width: 0; display: flex; align-items: baseline; }
.item-title { font-size: 16px; color: #333; font-weight: bold; margin-right: 5px; line-height: 1.4; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.item-tags { font-size: 14px; white-space: nowrap; flex-shrink: 0; }
.item-side-info { color: #8F000B; font-size: 15px; flex-shrink: 0; margin-left: 10px; font-weight: 500; }

/* 列表项底部：描述 + 附加元信息 + 视图统计 */
.item-row-bottom { display: flex; justify-content: space-between; align-items: center; color: #888; font-size: 14px; }
.item-desc { flex: 1; text-align: left; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.item-meta { margin: 0 15px; flex-shrink: 0; }
.item-stats { display: flex; align-items: center; width: 60px; justify-content: flex-end; flex-shrink: 0; }
.item-stats img { margin-right: 4px; opacity: 0.7; }


/* 搜索栏样式 */
.search-container { background: #fff; padding: 20px; margin-bottom: 20px; border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.05); }
.search-container .layui-form-item { margin-bottom: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.search-container .layui-input-inline { margin-right: 0; flex: 1; min-width: 200px; }
.search-container .layui-select-inline { width: 180px; }
.search-container .btn-search { background-color: #da0f08; color: #fff; border: none; padding: 0 25px; height: 38px; line-height: 38px; border-radius: 4px; cursor: pointer; transition: opacity 0.2s; }
.search-container .btn-search:hover { opacity: 0.9; }
@media (max-width: 768px) {
    .search-container .layui-input-inline, .search-container .layui-select-inline { width: 100%; flex: none; }
    .search-container .btn-search { width: 100%; }
}

@media screen and (max-width: 450px) {
    .search-container .layui-form-item .layui-input-inline {
        left: 0 !important;
        width: 100% !important;
        margin: 0 !important;
    }
    .search-container .layui-select-inline {
        width: 100% !important;
    }
}