/* 类案与法条推荐 - 按原型 similar_case.html 风格 */
.similar-case-container {
display: flex;
gap: 25px;
height: 100%;
min-height: 0;
overflow: hidden;
}
/* 左侧案例区域 (2/3宽度) */
.cases-section {
flex: 2;
background: white;
border-radius: var(--border-radius);
box-shadow: var(--box-shadow);
padding: 25px;
border: 1px solid var(--border-color);
display: flex;
flex-direction: column;
min-height: 0;
overflow: hidden;
}
/* 右侧法条区域 (1/3宽度) */
.laws-section {
flex: 1;
background: white;
border-radius: var(--border-radius);
box-shadow: var(--box-shadow);
padding: 25px;
border: 1px solid var(--border-color);
display: flex;
flex-direction: column;
min-height: 0;
overflow: hidden;
}
/* 区域标题 - 使用独立类名避免污染全局样式 */
.similar-section-title {
font-size: 1.5rem;
color: var(--secondary-color);
margin-bottom: 25px;
padding-bottom: 10px;
border-bottom: 2px solid var(--primary-color);
display: flex;
align-items: center;
gap: 12px;
flex-shrink: 0;
}
.similar-section-title i {
color: var(--primary-color);
}
/* 案例列表区域 - 可滚动 */
.cases-list {
flex: 1;
overflow-y: auto;
min-height: 0;
padding-right: 10px;
}
/* 法条列表区域 - 整体可滚动(包含法条卡片和详情面板) */
.laws-list {
flex: 1;
overflow-y: auto;
min-height: 0;
padding-right: 10px;
}
/* 案例卡片 */
.case-card {
margin-bottom: 25px;
border: 1px solid var(--border-color);
border-radius: var(--border-radius);
overflow: hidden;
transition: all 0.3s ease;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}
.case-card:hover {
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
transform: translateY(-3px);
}
.case-header {
background-color: #f8f9fa;
padding: 20px;
cursor: pointer;
display: flex;
justify-content: space-between;
align-items: flex-start;
border-bottom: 1px solid var(--border-color);
}
.case-header.active {
background-color: #e3f2fd;
border-bottom: none;
}
.case-title-container {
flex: 1;
}
.case-title {
font-size: 1.2rem;
color: var(--primary-color);
font-weight: 600;
margin-bottom: 10px;
display: flex;
align-items: center;
gap: 10px;
flex-wrap: wrap;
}
/* 相似度标签 */
.similarity-tag {
display: inline-flex;
align-items: center;
gap: 4px;
padding: 4px 12px;
border-radius: 12px;
font-size: 12px;
font-weight: 500;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
transition: all 0.3s ease;
}
/* 相似度等级样式 */
.similarity-tag.extreme-similarity {
background: linear-gradient(135deg, #ff6b6b 0%, #ee5a6f 100%);
color: white;
box-shadow: 0 2px 4px rgba(255, 107, 107, 0.3);
}
.similarity-tag.high-similarity {
background: linear-gradient(135deg, #ffa500 0%, #ff8c00 100%);
color: white;
box-shadow: 0 2px 4px rgba(255, 165, 0, 0.3);
}
.similarity-tag.normal-similarity {
background: linear-gradient(135deg, #95a5a6 0%, #7f8c8d 100%);
color: white;
box-shadow: 0 2px 4px rgba(149, 165, 166, 0.3);
}
/* 案例元信息和标签容器 */
.case-meta-container {
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
gap: 15px;
}
.case-meta {
display: flex;
flex-wrap: wrap;
gap: 15px;
font-size: 0.95rem;
color: var(--gray-color);
}
.case-meta-item {
display: flex;
align-items: center;
gap: 8px;
}
.case-meta-item i {
font-size: 0.9rem;
color: var(--primary-color);
}
/* 案例类型标签 */
.case-type-badge {
display: inline-flex;
padding: 4px 12px;
border-radius: 20px;
font-size: 0.85rem;
font-weight: 600;
align-items: center;
gap: 5px;
white-space: nowrap;
}
.case-type-badge.mediation {
background-color: #e8f5e9;
color: var(--success-color);
}
.case-type-badge.judgment {
background-color: #e3f2fd;
color: var(--primary-color);
}
.toggle-btn {
background: none;
border: none;
color: var(--primary-color);
font-size: 1.5rem;
cursor: pointer;
width: 30px;
height: 30px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
transition: background-color 0.2s;
flex-shrink: 0;
margin-top: 5px;
}
.toggle-btn:hover {
background-color: rgba(26, 111, 184, 0.1);
}
/* 案例内容 - 折叠动画 */
.case-content {
padding: 0;
max-height: 0;
overflow: hidden;
transition: max-height 0.5s ease, padding 0.5s ease;
background-color: white;
}
.case-content.expanded {
padding: 20px;
max-height: 2000px;
}
/* 案例详情 */
.case-detail {
background-color: #f9fafc;
border-radius: var(--border-radius);
padding: 20px;
}
.detail-section {
margin-bottom: 25px;
}
.detail-title {
color: var(--primary-color);
font-size: 1.1rem;
margin-bottom: 12px;
padding-left: 15px;
border-left: 4px solid var(--primary-color);
font-weight: 600;
}
.detail-content {
background-color: white;
padding: 15px 20px;
border-radius: var(--border-radius);
border: 1px solid #eaeaea;
line-height: 1.8;
}
.detail-content p {
margin-bottom: 12px;
}
.detail-content p:last-child {
margin-bottom: 0;
}
.detail-content ul,
.detail-content ol {
padding-left: 25px;
margin: 0;
}
.detail-content li {
margin-bottom: 8px;
}
/* 法条数量描述 */
.laws-count {
font-size: 1rem;
color: var(--gray-color);
margin-bottom: 20px;
padding: 10px 15px;
background-color: #f8f9fa;
border-radius: var(--border-radius);
border-left: 4px solid var(--primary-color);
flex-shrink: 0;
}
.laws-count strong {
color: var(--primary-color);
}
/* 法条卡片 */
.law-card {
margin-bottom: 20px;
border: 1px solid var(--border-color);
border-radius: var(--border-radius);
padding: 20px;
transition: all 0.3s ease;
cursor: pointer;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.03);
}
.law-card:hover {
border-color: var(--primary-color);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
transform: translateY(-2px);
}
.law-card.active {
border-color: var(--primary-color);
background: #f0f7ff;
box-shadow: 0 4px 12px rgba(26, 111, 184, 0.15);
}
.law-title {
font-size: 1.15rem;
color: var(--primary-color);
margin-bottom: 15px;
font-weight: 600;
line-height: 1.4;
}
.law-meta {
display: flex;
flex-wrap: wrap;
gap: 15px;
margin-bottom: 15px;
font-size: 0.9rem;
color: var(--gray-color);
}
.law-meta-item {
display: flex;
align-items: center;
gap: 6px;
}
.law-meta-item i {
font-size: 0.85rem;
}
/* 法条标签 - 已移除,改用 law-content 展示法条内容 */
/* 法条内容区域 - 按原型风格 */
.law-content {
background: #f8f9fa;
padding: 15px;
border-radius: var(--border-radius);
font-size: 0.95rem;
line-height: 1.6;
margin-top: 10px;
border-left: 3px solid var(--primary-color);
}
.law-content .law-article {
margin-bottom: 12px;
}
.law-content .law-article:last-child {
margin-bottom: 0;
}
.law-content .article-number {
font-weight: 600;
color: var(--primary-color);
margin-right: 8px;
}
/* 法条详情面板 - 位于 laws-list 内部,随列表整体滚动 */
.law-detail-panel {
background: #f8f9fa;
padding: 20px;
border-radius: var(--border-radius);
border: 1px solid var(--border-color);
margin-top: 20px;
}
.law-detail-title {
font-size: 1.1rem;
color: var(--secondary-color);
margin-bottom: 15px;
font-weight: 600;
border-bottom: 2px solid var(--primary-color);
padding-bottom: 8px;
}
.law-detail-content {
background: white;
padding: 15px;
border-radius: var(--border-radius);
font-size: 0.95rem;
line-height: 1.6;
border-left: 3px solid var(--primary-color);
}
.law-article {
margin-bottom: 15px;
}
.law-article:last-child {
margin-bottom: 0;
}
.article-number {
font-weight: 600;
color: var(--primary-color);
margin-right: 10px;
}
/* 空状态样式 */
.empty-state {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 60px 20px;
text-align: center;
color: var(--gray-color);
min-height: 200px;
}
.empty-icon {
font-size: 3rem;
margin-bottom: 20px;
color: #c1c1c1;
}
.empty-text {
font-size: 1.1rem;
margin: 0;
color: var(--gray-color);
}
/* 滚动条样式 */
.cases-list::-webkit-scrollbar,
.laws-list::-webkit-scrollbar,
.law-detail-content::-webkit-scrollbar {
width: 8px;
}
.cases-list::-webkit-scrollbar-track,
.laws-list::-webkit-scrollbar-track,
.law-detail-content::-webkit-scrollbar-track {
background: #f1f1f1;
border-radius: 4px;
}
.cases-list::-webkit-scrollbar-thumb,
.laws-list::-webkit-scrollbar-thumb,
.law-detail-content::-webkit-scrollbar-thumb {
background: #c1c1c1;
border-radius: 4px;
}
.cases-list::-webkit-scrollbar-thumb:hover,
.laws-list::-webkit-scrollbar-thumb:hover,
.law-detail-content::-webkit-scrollbar-thumb:hover {
background: #a8a8a8;
}
/* 响应式设计 */
@media (max-width: 992px) {
.similar-case-container {
flex-direction: column;
}
.cases-section,
.laws-section {
flex: none;
width: 100%;
max-height: 50vh;
}
.case-meta-container {
flex-direction: column;
align-items: flex-start;
gap: 10px;
}
}
@media (max-width: 768px) {
.cases-section,
.laws-section {
padding: 20px;
}
.section-title {
font-size: 1.3rem;
}
.case-header {
padding: 15px;
}
.case-title {
font-size: 1.1rem;
}
.case-meta {
flex-direction: column;
gap: 8px;
}
.detail-content {
padding: 12px 15px;
}
}
/* 加载更多容器 */
.load-more-container {
display: flex;
justify-content: center;
align-items: center;
padding: 30px 0;
margin-top: 20px;
}
/* 加载更多按钮 */
.load-more-btn {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 10px 24px;
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
color: white;
border: none;
border-radius: 20px;
font-size: 14px;
font-weight: 500;
cursor: pointer;
box-shadow: 0 4px 12px rgba(102, 126, 234, 0.3);
transition: all 0.3s ease;
}
.load-more-btn:hover {
transform: translateY(-2px);
box-shadow: 0 6px 16px rgba(102, 126, 234, 0.4);
}
.load-more-btn:active {
transform: translateY(0);
box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
}
.load-more-btn i {
font-size: 16px;
transition: transform 0.3s ease;
}
.load-more-btn:hover i {
transform: translateY(2px);
}
/* 没有更多数据提示 */
.no-more-data {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 10px 24px;
background: #f5f5f5;
color: #999;
border-radius: 20px;
font-size: 14px;
font-weight: 500;
}
.no-more-data i {
font-size: 16px;
color: #52c41a;
}