Files
banban/banban-mini/src/pages/chat/index.scss
T

184 lines
2.9 KiB
SCSS

.chat-page {
min-height: 100%;
background: #F5F7FA;
padding-bottom: 120px;
padding-bottom: calc(120px + constant(safe-area-inset-bottom));
padding-bottom: calc(120px + env(safe-area-inset-bottom));
}
.page-header {
padding: 80px 32px 24px;
.page-title {
font-size: 44px;
font-weight: 700;
color: #1A1A1A;
display: block;
line-height: 1.2;
}
}
.conversation-list {
height: calc(100vh - 200px);
padding: 0 24px;
box-sizing: border-box;
overflow: hidden;
}
.conversation-item {
background: #FFFFFF;
border-radius: 20px;
margin-bottom: 16px;
padding: 24px;
display: flex;
align-items: center;
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
transition: transform 0.1s ease;
&:active {
transform: scale(0.98);
}
}
.conversation-avatar {
width: 96px;
height: 96px;
background: linear-gradient(135deg, #FF8C42 0%, #FFB347 100%);
border-radius: 24px;
display: flex;
align-items: center;
justify-content: center;
margin-right: 24px;
flex-shrink: 0;
.avatar-icon {
font-size: 48px;
}
}
.conversation-content {
flex: 1;
min-width: 0;
display: flex;
flex-direction: column;
justify-content: center;
}
.conversation-header {
display: flex;
justify-content: space-between;
align-items: flex-start;
margin-bottom: 12px;
.conversation-time {
font-size: 24px;
color: #999999;
flex-shrink: 0;
margin-left: 16px;
}
}
.conversation-name-wrap {
display: flex;
align-items: center;
flex-wrap: wrap;
min-width: 0;
}
.conversation-name {
font-size: 32px;
font-weight: 600;
color: #1A1A1A;
margin-right: 12px;
}
.conversation-tag {
height: 40px;
padding: 0 14px;
border-radius: 999px;
font-size: 22px;
line-height: 40px;
color: #FFFFFF;
&.child {
background: #5B8FF9;
}
&.parent {
background: #36CFC9;
}
&.ai {
background: #FF8C42;
}
}
.conversation-footer {
display: flex;
justify-content: space-between;
align-items: center;
.last-message {
font-size: 28px;
color: #666666;
flex: 1;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
margin-right: 16px;
}
}
.conversation-meta {
display: block;
margin-top: 10px;
font-size: 24px;
color: #A0A0A0;
}
.unread-badge {
min-width: 36px;
height: 36px;
background: #FF4D4F;
border-radius: 18px;
display: flex;
align-items: center;
justify-content: center;
padding: 0 10px;
flex-shrink: 0;
.unread-count {
font-size: 22px;
color: #FFFFFF;
font-weight: 600;
}
}
.loading {
min-height: 50vh;
display: flex;
align-items: center;
justify-content: center;
text {
font-size: 30px;
color: #999999;
}
}
.empty-card {
background: #FFFFFF;
border-radius: 20px;
margin: 0 24px;
padding: 48px 32px;
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
text-align: center;
}
.empty-title {
display: block;
font-size: 34px;
font-weight: 700;
color: #1A1A1A;
}