@import '../theme.less'; .policy-page { min-height: 100vh; background: @jp-bg-page; .policy-content { padding: 24px 20px 40px; .policy-container { .jp-page-container(); } .policy-card { .jp-card-base(); padding: 24px 28px 16px; } .policy-header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 20px; padding-bottom: 16px; border-bottom: 1px solid @jp-border; .page-title { .jp-section-title(); margin: 0; .anticon { margin-right: 8px; color: @jp-primary; } } .policy-search { width: 320px; max-width: 100%; .search-icon { color: @jp-text-muted; cursor: pointer; &:hover { color: @jp-primary; } } } } .policy-list { .policy-item { padding: 20px 0; cursor: pointer; border-bottom: 1px solid @jp-border; transition: background 0.2s; &:hover { background: @jp-primary-light; margin: 0 -12px; padding-left: 12px; padding-right: 12px; border-radius: @jp-radius; } &:last-child { border-bottom: none; } } .policy-title { margin: 0 0 10px; color: @jp-text-primary; font-weight: 600; line-height: 1.5; } .policy-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 8px; .type-tag { .jp-job-tag(); } .level-tag { background: #f6ffed !important; border: 1px solid #b7eb8f !important; color: #52c41a !important; } } .policy-source { display: block; margin-bottom: 8px; font-size: 13px; .anticon { margin-right: 4px; } } .policy-meta { display: flex; flex-wrap: wrap; gap: 20px; font-size: 13px; color: @jp-text-muted; .anticon { margin-right: 4px; } } } .policy-pagination { display: flex; justify-content: center; margin-top: 24px; padding-top: 16px; border-top: 1px solid @jp-border; } } }