/* 基础样式和重置 */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* 标签栏样式 - 添加在文件开头附近 */
.hot-tags-wrapper {
    display: flex;
    align-items: center;
    background: var(--bg-page);
    border-bottom: 1px solid var(--border);
    overflow: visible;
}
.hot-tags {
    flex: 1;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    display: flex;
    gap: 8px;
    padding: 4px 4px;
    white-space: nowrap;
    flex-wrap: nowrap;
    align-items: center;
    max-height: 40px;          /* 固定单行高度 */
}
.hot-tag {
    white-space: nowrap;
    flex-shrink: 0;
}
.hot-tags::-webkit-scrollbar {
    display: none;
}
.hot-tags-scroll {
    background: none;
    border: none;
    font-size: 14px;
    cursor: pointer;
    padding: 8px 6px;
    color: var(--text-secondary);
    flex-shrink: 0;
}
.hot-tags-scroll:hover {
    color: var(--primary);
}

/* ========== 论坛样式（彻底重写） ========== */

/* 帖子列表 */
.post-list {
    background: var(--card-bg);
}

.post-item {
    display: flex;
    align-items: flex-start;
    padding: 10px 14px;
    border-bottom: 1px solid var(--border);
    cursor: pointer;
}

.post-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    margin-right: 10px;
    margin-bottom: 0;
    flex-shrink: 0;
    background: var(--nav-active-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
}

.post-content-wrapper {
    flex: 1;
    min-width: 0;
}

.post-author-info {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 8px;
}

.post-author-name {
    font-weight: 600;
    font-size: 14px;
    color: var(--name-color);
}

.post-time {
    font-size: 11px;
    color: var(--text-secondary);
    white-space: nowrap;
}

.post-content {
    margin: 0;
    line-height: 1.5;
    font-size: 0;
}
.post-content > * {
    font-size: 14px;
}

.post-title {
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 4px;
    line-height: 1.4;
}

.post-preview {
    font-size: 13px;
    color: var(--text-secondary);
    line-height: 1.5;
    margin-bottom: 8px;
}

/* 操作按钮行 - 关键：不允许换行 */
.post-actions {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-wrap: nowrap;
    overflow: hidden;
    max-width: 100%;
    margin-top: 0;
}
.post-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    background: none;
    border: 1px solid var(--border);
    font-size: 12px;
    color: var(--text-secondary);
    cursor: pointer;
    padding: 4px 10px;
    border-radius: 14px;
    white-space: nowrap;
    flex-shrink: 0;
    line-height: 1;
    height: auto;
    box-sizing: border-box;
    transition: background 0.15s;
}
.post-actions button:hover {
    background: var(--bg-page);
    border-color: var(--primary);
}
.post-actions button.post-action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    line-height: 1;
    transform: translateY(0);
    width: auto;
    max-width: none;
    min-width: auto;
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
    margin: 0;
    padding: 2px 6px;
    font-size: 11px;
    border: 1px solid var(--border);
    border-radius: 10px;
    box-sizing: border-box;
}
.edit-btn, .delete-btn {
    font-size: 11px;
    opacity: 0.7;
    padding: 4px 8px;
    transform: translateY(0);
}
.edit-btn:hover, .delete-btn:hover {
    opacity: 1;
}

/* 帖子详情弹窗 */
#post-detail-modal .modal-content {
    max-width: 360px !important;
    width: 95% !important;
}

.post-detail-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.post-detail-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
    background: var(--nav-active-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
}

.post-detail-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.post-detail-author-name {
    font-size: 15px;
    font-weight: 600;
    color: var(--name-color);
}

.post-detail-time {
    font-size: 12px;
    color: var(--text-secondary);
    margin-top: 2px;
}

.post-detail-content {
    font-size: 18px;
    line-height: 1.8;
    margin: 18px 0 22px !important;
    white-space: pre-wrap;
    word-break: break-word;
}

/* 帖子详情标题 */
.post-detail-title {
    font-size: 20px !important;
    font-weight: 700 !important;
    margin-bottom: 16px !important;
    color: var(--text-primary) !important;
}

.post-detail-stats {
    display: flex;
    gap: 20px;
    font-size: 14px;
    color: var(--text-secondary);
    padding: 8px 0;
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    margin-bottom: 0;
}

.post-detail-liked {
    font-size: 13px;
    color: var(--text-secondary);
    padding: 8px 0;
    border-bottom: 1px solid var(--border);
    margin-bottom: 14px;
    line-height: 1.5;
}

/* 评论区 */
.comment-section h4 {
    font-size: 15px;
    margin-bottom: 10px;
    color: var(--text-primary);
}

.comment-item {
    display: flex;
    gap: 10px;
    padding: 12px 0;
    border-bottom: 1px solid var(--border);
    font-size: 15px;
}

.comment-item:last-child {
    border-bottom: none;
}

.comment-author-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    flex-shrink: 0;
    background: var(--nav-active-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}

.comment-content-wrapper {
    flex: 1;
    min-width: 0;
    overflow: hidden;   /* 新增 */
}

.comment-author-name {
    font-weight: 600;
    margin-right: 4px;
    color: var(--name-color);
}

.comment-text {
    word-break: break-word;
    line-height: 1.5;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    max-height: 3em; /* 2行高度 */
}

.comment-time {
    font-size: 12px;
    color: var(--text-secondary);
    margin-top: 3px;
}

.reply-btn, .edit-comment-btn, .delete-comment-btn {
    background: none;
    border: none;
    font-size: 12px;
    color: var(--text-secondary);
    cursor: pointer;
    padding: 2px 6px;
    opacity: 0.7;
}
.reply-btn:hover, .edit-comment-btn:hover, .delete-comment-btn:hover {
    opacity: 1;
}
}

.reply-btn, .edit-comment-btn, .delete-comment-btn {
    background: none;
    border: none;
    font-size: 11px;
    color: var(--text-secondary);
    cursor: pointer;
    padding: 2px 6px;
    opacity: 0.7;
}

.reply-btn:hover,
.edit-comment-btn:hover,
.delete-comment-btn:hover {
    opacity: 1;
}

.like-btn.liked {
    background: rgba(255, 107, 107, 0.15);
    border-color: #ff6b6b;
    color: #e53e3e;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

:root {
    --primary: #667eea;
    --primary-dark: #5a67d8;
    --header-bg: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    --header-text: #ffffff;
    --subheader-bg: #667eea;
    --subheader-text: #ffffff;
    --bg-page: #f8f9fa;
    --card-bg: #ffffff;
    --text-primary: #212529;
    --name-color: #212529;
    --text-secondary: #6c757d;
    --border: #e9ecef;
    --button-bg: #667eea;
    --button-text: white;
    --input-bg: white;
    --input-border: #e9ecef;
    --nav-bg: #ffffff;
    --nav-text: #6c757d;
    --nav-active: #e9ecef;
    --shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    --chat-bg: #f8f9fa;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

[data-theme="dark"] {
    --primary: #8b9bff;
    --primary-dark: #6c7bd8;
    --header-bg: linear-gradient(135deg, #0d0d1a 0%, #1a1a2e 100%);
    --header-text: #ffffff;
    --subheader-bg: #1e1e2f;
    --subheader-text: #ffffff;
    --bg-page: #1a1a1a;
    --card-bg: #2d2d2d;
    --text-primary: #ffffff;
    --name-color: #ffffff;
    --text-secondary: #adb5bd;
    --border: #404040;
    --button-bg: #8b9bff;
    --button-text: #1a1a1a;
    --input-bg: #3d3d3d;
    --input-border: #555;
    --nav-bg: #2d2d2d;
    --nav-text: #adb5bd;
    --nav-active: #404040;
    --shadow: 0 2px 8px rgba(255, 255, 255, 0.1);
    --chat-bg: #1a1a1a;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

[data-theme="ocean"] {
    --primary: #1565c0;
    --primary-dark: #0d47a1;
    --header-bg: linear-gradient(135deg, #1e88e5 0%, #0d47a1 100%);
    --header-text: white;
    --subheader-bg: #1e88e5;
    --subheader-text: white;
    --bg-page: #e3f2fd;
    --card-bg: #ffffff;
    --text-primary: #0d47a1;
    --name-color: #0d47a1;
    --text-secondary: #1565c0;
    --border: #90caf9;
    --button-bg: #1565c0;
    --button-text: white;
    --input-bg: white;
    --input-border: #90caf9;
    --nav-bg: #ffffff;
    --nav-text: #1565c0;
    --nav-active: #bbdefb;
    --shadow: 0 2px 8px rgba(13, 71, 161, 0.2);
    --chat-bg: #e3f2fd;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

[data-theme="purple"] {
    --primary: #9b59b6;
    --primary-dark: #8e44ad;
    --header-bg: linear-gradient(135deg, #d2b4de 0%, #b38fcc 100%);
    --header-text: #4a235a;
    --subheader-bg: #d2b4de;
    --subheader-text: #4a235a;
    --bg-page: #f5eef8;
    --card-bg: #ffffff;
    --text-primary: #4a235a;
    --name-color: #4a235a;
    --text-secondary: #7d3c98;
    --border: #e8daef;
    --button-bg: #9b59b6;
    --button-text: white;
    --input-bg: white;
    --input-border: #e8daef;
    --nav-bg: #ffffff;
    --nav-text: #7d3c98;
    --nav-active: #e8daef;
    --shadow: 0 2px 8px rgba(155, 89, 182, 0.2);
    --chat-bg: #f5eef8;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

[data-theme="pink"] {
    --primary: #e91e63;
    --primary-dark: #c2185b;
    --header-bg: linear-gradient(135deg, #f8bbd0 0%, #f48fb1 100%);
    --header-text: #880e4f;
    --subheader-bg: #e91e63;
    --subheader-text: #ffffff;
    --bg-page: #fce4ec;
    --card-bg: #ffffff;
    --text-primary: #880e4f;
    --text-secondary: #ad1457;
    --border: #f8bbd0;
    --button-bg: #e91e63;
    --button-text: white;
    --input-bg: white;
    --input-border: #f8bbd0;
    --nav-active: #f8bbd0;
    --shadow: 0 2px 8px rgba(233, 30, 99, 0.2);
    --chat-bg: #fce4ec;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

[data-theme="orange"] {
    --primary: #ff9800;
    --primary-dark: #f57c00;
    --header-bg: linear-gradient(135deg, #ffe0b2 0%, #ffcc80 100%);
    --header-text: #e65100;
    --subheader-bg: #ff9800;
    --subheader-text: #ffffff;
    --bg-page: #fff3e0;
    --card-bg: #ffffff;
    --text-primary: #e65100;
    --text-secondary: #f57c00;
    --border: #ffe0b2;
    --button-bg: #ff9800;
    --button-text: white;
    --input-bg: white;
    --input-border: #ffe0b2;
    --nav-active: #ffe0b2;
    --shadow: 0 2px 8px rgba(255, 152, 0, 0.2);
    --chat-bg: #fff3e0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

[data-theme="green"] {
    --primary: #4caf50;
    --primary-dark: #388e3c;
    --header-bg: linear-gradient(135deg, #c8e6c9 0%, #a5d6a7 100%);
    --header-text: #1b5e20;
    --subheader-bg: #4caf50;
    --subheader-text: #ffffff;
    --bg-page: #e8f5e9;
    --card-bg: #ffffff;
    --text-primary: #1b5e20;
    --text-secondary: #388e3c;
    --border: #c8e6c9;
    --button-bg: #4caf50;
    --button-text: white;
    --input-bg: white;
    --input-border: #c8e6c9;
    --nav-active: #c8e6c9;
    --shadow: 0 2px 8px rgba(76, 175, 80, 0.2);
    --chat-bg: #e8f5e9;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

body {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    background: var(--bg-page);
    color: var(--text-primary);
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    padding: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 手机容器 */
.phone-container {
    width: 375px;
    height: 812px;
    background: transparent;
    border-radius: 40px;
    box-shadow: var(--shadow);
    overflow: hidden;
    position: relative;
    display: flex;
    flex-direction: column;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 壁纸层 */
.phone-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: var(--wallpaper-url, none);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: var(--wallpaper-opacity, 0);
    z-index: -2;
    pointer-events: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.phone-container {
    background: transparent !important;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 头部样式 */
.header {
    background: var(--header-bg);
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
    color: var(--header-text);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.avatar span {
    font-size: 24px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.title {
    font-size: 20px;
    font-weight: 600;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 内容区域 */
.content {
    flex: 1;
    overflow: hidden;
    position: relative;
    background: transparent;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 页面容器 */
.page {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    display: block;
    overflow-y: auto;
    background: transparent;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.page.active {
    opacity: 1;
    visibility: visible;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 底部导航栏 */
.bottom-nav {
    background: var(--card-bg);
    border-top: 1px solid var(--border);
    padding: 10px 0;
    display: flex;
    justify-content: space-around;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.nav-item {
    flex: 1;
    background: none;
    border: none;
    cursor: pointer;
    padding: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    color: var(--text-color);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.nav-item.active {
    color: var(--primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.nav-icon {
    font-size: 24px;
    position: relative;
    display: inline-block;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.nav-text {
    font-size: 0.7rem;
    font-weight: 500;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 统一列表样式 */
.chat-list,
.post-list,
.contact-list {
    height: 100%;
    overflow-y: auto;
    background: var(--card-bg);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 动态页面样式 */
.dynamic-header {
    padding: 12px 15px;
    background: transparent;  /* 透明背景 */
    border-bottom: none;      /* 无边框 */
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-title {
    font-size: 20px;
    font-weight: 600;
    color: var(--text-primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-header-actions {
    display: flex;
    gap: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.header-icon-btn {
    background: none;
    border: none;
    font-size: 22px;
    cursor: pointer;
    color: var(--text-primary);
    padding: 6px;
    border-radius: 50%;
    transition: background 0.2s;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.header-icon-btn:hover {
    background: rgba(0,0,0,0.05);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-publish-entry {
    padding: 12px 15px;
    background: var(--card-bg);
    border-bottom: 1px solid var(--border);
    cursor: pointer;
    transition: background 0.2s;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-publish-entry:hover {
    background: var(--bg-page);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.post-entry-text {
    font-size: 1rem;
    color: var(--text-secondary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 动态卡片样式 */
.dynamic-card {
    padding: 15px;
    border-bottom: 1px solid var(--border);
    cursor: pointer;
    position: relative;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-card-header {
    display: flex;
    align-items: center;
    margin-bottom: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--nav-active-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 12px;
    flex-shrink: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-avatar span {
    font-size: 24px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-user-info {
    flex: 1;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-nickname {
    font-size: 1rem;
    font-weight: 500;
    color: var(--text-primary);
    margin-bottom: 4px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-time {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-content {
    font-size: 1rem;
    color: var(--text-primary);
    line-height: 1.5;
    margin-bottom: 12px;
    word-wrap: break-word;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 底部信息行 */
.dynamic-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-time {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-actions {
    display: flex;
    align-items: center;
    gap: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* .dynamic-like-count 已移除，点赞数隐藏在菜单中 */

.dynamic-more-btn {
    background: none;
    border: none;
    font-size: 20px;
    cursor: pointer;
    color: var(--text-secondary);
    padding: 4px;
    line-height: 1;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-more-btn:hover {
    background: var(--bg-page);
    border-radius: 4px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 点赞数显示 */
.dynamic-likes {
    font-size: 0.85rem;
    color: var(--text-secondary);
    margin-bottom: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-likes.has-likes {
    color: var(--primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 评论区域 */
.dynamic-comments {
    margin-top: 8px;
    padding-top: 6px;
    /* border-top: 1px solid var(--border); */  /* 删除这一行 */
    /* background: var(--bg-page); */            /* 删除这一行 */
    border-radius: 8px;
    padding: 8px 10px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.comment-item {
    font-size: 0.9rem;
    margin-bottom: 6px;
    line-height: 1.4;
    position: relative;
    padding-right: 30px; /* 为按钮留出空间 */
}
.dynamic-comments .comment-item .comment-text {
    word-break: break-word;
    white-space: normal;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.comment-item:last-child {
    margin-bottom: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.comment-menu-btn {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px;
    cursor: pointer;
    color: var(--text-secondary);
    opacity: 0.6;
    transition: opacity 0.2s;
    padding: 4px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.comment-menu-btn:hover {
    opacity: 1;
    background: var(--bg-page);
    border-radius: 4px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.comment-author {
    font-weight: 500;
    color: var(--name-color);
    margin-right: 4px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.reply-target {
    color: var(--primary);
    font-weight: 600;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.comment-more {
    font-size: 0.9rem;
    color: var(--text-secondary);
    cursor: pointer;
    margin-top: 6px;
    text-align: center;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.comment-more:hover {
    color: var(--primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 评论输入区域 */
.comment-input-area {
    display: flex;
    gap: 8px;
    width: 100%;
    padding-top: 4px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.comment-input {
    flex: 1;
    padding: 6px 10px;
    border: 1px solid var(--border);
    border-radius: 16px;
    font-size: 0.85rem;
    outline: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.comment-input:focus {
    border-color: var(--primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.comment-send-btn {
    background: var(--primary);
    color: white;
    border: none;
    border-radius: 16px;
    padding: 6px 12px;
    font-size: 0.85rem;
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.comment-send-btn:hover {
    background: var(--primary-dark);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.chat-item,
.post-item {
    display: flex;
    align-items: flex-start;
    padding: 14px 16px;
    border-bottom: 1px solid var(--border);
    cursor: pointer;
    position: relative;
}

.contact-item {
    display: flex;
    align-items: center;
    padding: 15px;
    border-bottom: 1px solid var(--border);
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 可滑动联系人项 */
.contact-item.swipeable {
    position: relative;
    transition: transform 0.2s ease;
    overflow: hidden;
    background: var(--card-bg);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.contact-delete-btn {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 80px;
    background: #e53e3e;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    cursor: pointer;
    transform: translateX(100%);
    transition: transform 0.2s ease;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.contact-item.swiped .contact-delete-btn {
    transform: translateX(0);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.contact-item.swiped {
    transform: translateX(-80px);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 论坛页面头部 */

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.hot-tag {
    padding: 4px 12px;
    background: var(--nav-active-bg);
    border-radius: 15px;
    font-size: 0.7rem;
    color: var(--primary);
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.forum-header {
    padding: 10px 15px;
    background: var(--card-bg);
    border-bottom: 1px solid var(--border);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.create-post-btn {
    padding: 8px 16px;
    background: var(--primary);
    color: white;
    border: none;
    border-radius: 20px;
    font-size: 14px;
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* ========== 弹窗全局样式 ========== */
.modal {
    position: fixed;          /* 保持不变 */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 2000;
    display: flex;
    align-items: center;      /* 垂直居中 */
    justify-content: center;  /* 水平居中 */
    padding: 20px;            /* 四周留边，防止贴边 */
    box-sizing: border-box;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, visibility 0.2s ease;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.modal.active {
    opacity: 1;
    visibility: visible;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 弹窗卡片：限制最大高度，使用 flex 列布局 */
.modal-content {
    background: var(--card-bg);
    border-radius: 24px;
    max-width: 370px;
    width: 100%;
    max-height: 85vh;         /* 关键：限制最大高度为视口的85% */
    display: flex;
    flex-direction: column;   /* 头部、身体、底部垂直排列 */
    overflow: hidden;         /* 超出部分隐藏，由内部滚动处理 */
    animation: modalSlideIn 0.3s ease;
    box-shadow: 0 20px 35px -8px rgba(0, 0, 0, 0.2);
    word-wrap: break-word;      /* 防止文字溢出 */
    overflow-wrap: break-word;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 弹窗头部：固定高度，不滚动 */
.modal-header {
    flex-shrink: 0;           /* 防止被压缩 */
    padding: 16px 20px;
    border-bottom: 1px solid var(--border);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.modal-header h3 {
    font-size: 20px;
    font-weight: 600;
    margin: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 弹窗身体：占据剩余空间，独立滚动 */
.modal-body {
    flex: 1;                  /* 填满剩余高度 */
    overflow-y: auto;         /* 内容过多时滚动 */
    padding: 16px 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 弹窗底部：固定高度，不滚动 */
.modal-footer {
    flex-shrink: 0;
    padding: 6px 14px 14px;
    border-top: 1px solid var(--border);
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    gap: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 针对帖子详情弹窗（评论区域）保留纵向布局，避免影响评论区 */
#post-detail-modal .modal-footer {
    flex-direction: column;
    gap: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 动态详情弹窗内的评论样式优化 */
#dynamic-detail-modal .comment-item {
    margin-bottom: 14px;
    padding-bottom: 10px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#dynamic-detail-modal .comment-item:last-child {
    margin-bottom: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#dynamic-detail-modal .comment-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 6px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#dynamic-detail-modal .comment-content {
    margin-bottom: 8px;
    line-height: 1.5;
    word-break: break-word;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#dynamic-detail-modal .comment-actions {
    display: flex;
    gap: 16px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#dynamic-detail-modal .comment-actions button {
    background: none;
    border: none;
    color: var(--text-secondary);
    font-size: 0.8rem;
    padding: 4px 0;
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#dynamic-detail-modal .comment-actions button:hover {
    color: var(--primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#dynamic-detail-modal .comment-input-area {
    margin-top: 16px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 弹窗内表单元素间距优化 */
.modal-body .form-group {
    margin-bottom: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.modal-body .form-group label {
    margin-bottom: 8px;
    font-weight: 500;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.modal-body input,
.modal-body textarea,
.modal-body select {
    padding: 12px;
    font-size: 15px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 帖子详情 */
.post-detail-content {
    max-width: 450px;
    overflow-y: auto;
    scrollbar-width: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.post-detail-body {
    padding: 15px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 按钮样式 */
.cancel-btn, .submit-btn {
    padding: 8px 16px;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.cancel-btn {
    background: var(--nav-active-bg);
    color: var(--text-primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.submit-btn {
    background: var(--primary);
    color: white;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 隐藏滚动条 */
.chat-list, .post-list, .contact-list {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.chat-list::-webkit-scrollbar, .post-list::-webkit-scrollbar, .contact-list::-webkit-scrollbar {
    display: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 联系人分组 */
.contact-group {
    margin-bottom: 10px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.group-header {
    padding: 10px 15px;
    background: #f5f5f5;
    font-size: 14px;
    color: #888;
    font-weight: 500;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 统一头像 */
.chat-item-avatar,
.post-avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--nav-active-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 12px;
    flex-shrink: 0;
}

.contact-avatar {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: var(--nav-active-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 15px;
    flex-shrink: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.chat-item-avatar span,
.post-avatar span {
    font-size: 22px;
}

.contact-avatar span {
    font-size: 28px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 右侧内容区域 */
.chat-item-info,
.post-content-wrapper {
    flex: 1;
    min-width: 0;
    overflow: hidden;           /* 新增这一行 */
    display: flex;
    flex-direction: column;
}

.contact-info {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.chat-item-name,
.contact-name,
.post-author-name {
    font-size: 15px;
    font-weight: 600;
    color: var(--name-color);
    margin-right: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.post-author-info {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    width: 100%;
    margin-bottom: 2px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.post-time {
    font-size: 12px;
    color: var(--text-secondary);
    white-space: nowrap;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.chat-item-time {
    font-size: 0.75rem;
    color: #adb5bd;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.chat-item-last-msg,
.post-content {
    font-size: 14px;
    line-height: 1.5;
    color: var(--text-primary);
    margin: 2px 0 4px;
    white-space: pre-wrap;
    word-wrap: break-word;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 未读红点 */
.unread-badge {
    background: #ff3b30;
    color: white;
    border-radius: 10px;
    padding: 0 5px;
    font-size: 0.7rem;
    margin-left: 5px;
    display: inline-block;
    min-width: 20px;
    text-align: center;
    line-height: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.badge {
    position: absolute;
    top: -3px;
    right: -8px;
    background-color: #ff3b30;
    color: white;
    border-radius: 50%;
    min-width: 8px;
    width: 8px;
    height: 8px;
    font-size: 0;
    line-height: 8px;
    text-align: center;
    padding: 0;
    pointer-events: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 聊天窗口样式 */
.chat-window {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--card-bg);
    display: flex;
    flex-direction: column;
    z-index: 1000;
    visibility: hidden;
    transform: translateX(100%);
    transition: all 0.3s ease;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.chat-window.active {
    visibility: visible;
    transform: translateX(0);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.chat-header {
    background: var(--subheader-bg);
    padding: 15px 20px;
    display: flex;
    align-items: center;
    gap: 15px;
    color: var(--subheader-text);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.back-btn {
    background: none;
    border: none;
    color: white;
    font-size: 24px;
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.chat-user-info {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.chat-avatar {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.3);
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.chat-title-wrapper {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.chat-header h2 {
    font-size: 18px;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.chat-signature {
    font-size: 0.7rem;
    color: #999;
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 消息区域 */
.chat-messages {
    flex: 1;
    overflow-y: auto;
    padding: 12px 16px;
    background: var(--bg-page);
    display: flex;
    flex-direction: column;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 新布局样式（微信风格） */
.message-row {
    display: flex;
    margin-bottom: 12px;
    align-items: flex-start;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-row.left {
    justify-content: flex-start;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-row.right {
    justify-content: flex-end;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--nav-active-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-avatar img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-avatar span {
    font-size: 24px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-row.left .message-avatar {
    margin-right: 10px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-row.right .message-avatar {
    margin-left: 10px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-bubble-wrapper {
    max-width: 70%;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-name {
    font-size: 0.7rem;
    color: var(--text-secondary);
    margin-bottom: 4px;
    margin-left: 4px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-bubble {
    padding: 8px 12px;
    font-size: 1rem;
    line-height: 1.4;
    word-wrap: break-word;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-bubble.sent {
    background: var(--primary);
    color: white;
    border-radius: 18px 0 18px 18px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-bubble.received {
    background: var(--nav-active-bg);
    color: var(--text-color);
    border-radius: 0 18px 18px 18px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 拍一拍消息 */
.pat-message {
    text-align: center;
    font-size: 0.7rem;
    color: #999;
    font-style: italic;
    margin: 8px 0;
    background: transparent;
    padding: 4px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 引用条样式 */
.quote-bar {
    background: var(--bg-page);
    border-bottom: 1px solid var(--border);
    padding: 8px 15px;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.9rem;
    color: var(--text-secondary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.quote-bar .quote-icon {
    font-size: 1.2rem;
    color: var(--primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.quote-bar .quote-text {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.quote-bar .quote-close-btn {
    background: none;
    border: none;
    color: var(--text-secondary);
    font-size: 1.2rem;
    cursor: pointer;
    padding: 2px;
    border-radius: 4px;
    transition: background 0.2s;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.quote-bar .quote-close-btn:hover {
    background: var(--nav-active-bg);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 输入区域 */
.chat-input-area {
    background: var(--card-bg);
    border-top: 1px solid var(--border);
    padding: 10px 15px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.input-controls {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.emoji-btn, .add-btn {
    width: 32px;
    height: 32px;
    border: none;
    background: var(--bg-page);
    border-radius: 50%;
    font-size: 18px;
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.msg-input {
    flex: 1;
    padding: 8px 12px;
    border: 1px solid var(--border);
    border-radius: 18px;
    font-size: 14px;
    outline: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.send-btn {
    padding: 8px 12px;
    background: var(--primary);
    color: white;
    border: none;
    border-radius: 18px;
    font-size: 0.7rem;
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.send-btn:disabled {
    background: #adb5bd;
    cursor: not-allowed;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 底部弹窗 */
.bottom-sheet {
    background: rgba(255, 255, 255, 0.95);
    border-radius: 20px 20px 0 0;
    padding: 20px 15px;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1001;
    backdrop-filter: blur(10px);
    height: 35vh;
    max-height: 284px;
    overflow: hidden;
    visibility: hidden;
    transform: translateY(100%);
    transition: all 0.3s ease;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.bottom-sheet.active {
    visibility: visible;
    transform: translateY(0);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.sheet-content.active {
    display: block;
    overflow-y: auto;
    max-height: 100%;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.sheet-content {
    display: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.sheet-content.active {
    display: block;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.menu-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    margin-bottom: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.menu-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 15px;
    border-radius: 12px;
    cursor: pointer;
    background: rgba(255, 255, 255, 0.8);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.menu-icon {
    font-size: 28px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.menu-text {
    font-size: 13px;
    color: var(--text-color);
    text-align: center;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 角色设置页 */
.profile-settings {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--card-bg);
    display: flex;
    flex-direction: column;
    z-index: 1002;
    transition: transform 0.3s ease;
    transform: translateX(100%);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.profile-settings.active {
    transform: translateX(0);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.settings-header {
    background: var(--subheader-bg);
    padding: 15px 20px;
    display: flex;
    align-items: center;
    gap: 15px;
    color: var(--subheader-text);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.close-btn {
    background: #e53e3e;
    color: white;
    border: none;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    font-size: 18px;
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.settings-content {
    flex: 1;
    padding: 20px;
    overflow-y: auto;
    scrollbar-width: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.form-group {
    margin-bottom: 15px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.form-group label {
    display: block;
    font-size: 1rem;
    color: var(--text-primary);
    margin-bottom: 8px;
    font-weight: 500;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.form-group input,
.form-group textarea,
.form-group select {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: 1rem;
    outline: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.save-btn {
    width: 100%;
    padding: 12px;
    background: var(--primary);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    cursor: pointer;
    margin-top: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.delete-btn:not(.post-action-btn) {
    width: 100%;
    padding: 12px;
    background: #e53e3e;
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    cursor: pointer;
    margin-bottom: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.delete-btn:hover {
    background: #c53030;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 妈咪中心 */
.mammy-center-panel {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--card-bg);
    display: flex;
    flex-direction: column;
    z-index: 1002;
    transition: transform 0.3s ease;
    transform: translateX(-100%);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.mammy-center-panel.active {
    transform: translateX(0);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.mammy-center-header {
    background: var(--subheader-bg);
    padding: 15px 20px;
    display: flex;
    align-items: center;
    gap: 15px;
    color: var(--subheader-text);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.mammy-center-content {
    flex: 1;
    overflow-y: auto;
    padding: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.tabs {
    display: flex;
    overflow-x: auto;
    scrollbar-width: none;
    border-bottom: 1px solid var(--border);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.tab-btn {
    padding: 10px 15px;
    background: none;
    border: none;
    cursor: pointer;
    font-size: 1rem;
    color: var(--text-color);
    border-bottom: 2px solid transparent;
    white-space: nowrap;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.tab-btn.active {
    color: var(--primary);
    border-bottom-color: var(--primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.tab-content {
    display: none;
    padding: 20px 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.tab-content.active {
    display: block;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 遮罩层 */
.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: none;
    z-index: 998;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.overlay.active {
    display: block;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 占位符 */
.placeholder-message {
    text-align: center;
    color: var(--text-secondary);
    padding: 40px 20px;
    font-size: 14px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* ===== 缺失的定制样式（追加到文件末尾） ===== */

/* 1. 气泡形状样式（角色设置页和妈咪中心用） */
.message-bubble.rounded {
    border-radius: 0 18px 18px 18px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-bubble.pointed {
    clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 90% 100%, 0% 80%);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-bubble.cloud {
    border-radius: 60% 40% 50% 50% / 40% 50% 60% 50%;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 2. 花纹样式 */
.message-bubble[style*="stripes"],
.bubble-preview[style*="stripes"] {
    background-image: repeating-linear-gradient(45deg, rgba(0,0,0,0.1) 0px, rgba(0,0,0,0.1) 2px, transparent 2px, transparent 8px);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-bubble[style*="dots"],
.bubble-preview[style*="dots"] {
    background-image: radial-gradient(circle at 2px 2px, rgba(0,0,0,0.1) 1px, transparent 1px);
    background-size: 8px 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-bubble[style*="grid"],
.bubble-preview[style*="grid"] {
    background-image: repeating-linear-gradient(0deg, rgba(0,0,0,0.1) 0px, rgba(0,0,0,0.1) 1px, transparent 1px, transparent 8px),
                      repeating-linear-gradient(90deg, rgba(0,0,0,0.1) 0px, rgba(0,0,0,0.1) 1px, transparent 1px, transparent 8px);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 3. 气泡预览（角色设置页） */
.bubble-preview {
    padding: 12px 16px;
    background: var(--nav-active-bg);
    color: var(--text-color);
    display: inline-block;
    max-width: 80%;
    word-wrap: break-word;
    transition: all 0.2s ease;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.bubble-preview.rounded {
    border-radius: 0 18px 18px 18px;
    box-shadow: inset 0 1px 2px rgba(255, 255, 255, 0.3);
    background: linear-gradient(135deg, #e9ecef 0%, #e0e2e5 100%);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.bubble-preview.pointed {
    clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 90% 100%, 0% 80%);
    background: linear-gradient(135deg, #e9ecef 0%, #e0e2e5 100%);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.bubble-preview.cloud {
    border-radius: 60% 40% 50% 50% / 40% 50% 60% 50%;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 4. 滑块样式（回复温度、表情频率等） */
input[type="range"] {
    -webkit-appearance: none;
    width: 100%;
    height: 4px;
    background: var(--border);
    border-radius: 2px;
    outline: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--primary);
    cursor: pointer;
    border: none;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
input[type="range"]::-moz-range-thumb {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--primary);
    cursor: pointer;
    border: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 5. 图片预览样式 */
.image-preview {
    margin-top: 10px;
    text-align: center;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.image-preview img {
    max-width: 200px;
    max-height: 200px;
    border-radius: 8px;
    border: 1px solid var(--border);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 6. 时间分隔符 */
.time-separator {
    text-align: center;
    font-size: 11px;
    color: #999;
    margin: 12px 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 7. 转账消息样式 */
.transfer-message {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    border-radius: 12px;
    padding: 12px 16px;
    margin: 8px 0;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    border: none;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.transfer-message::before {
    content: '💰';
    font-size: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 8. 心声消息样式 */
.voice-thoughts-message {
    background: #f0f2f5 !important;
    color: #666 !important;
    font-style: italic;
    border-radius: 12px;
    padding: 12px 16px;
    margin: 8px 0;
    border: 1px dashed #ccc !important;
    font-size: 14px;
    line-height: 1.6;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.voice-thoughts-message::before {
    content: '💭';
    font-size: 18px;
    margin-right: 8px;
    vertical-align: middle;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 9. 图片/视频卡片样式 */
.image-card-message,
.video-card-message {
    background: #f8f9fa !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 12px;
    padding: 12px 16px;
    margin: 8px 0;
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 14px;
    line-height: 1.5;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.image-card-message::before {
    content: '📷';
    font-size: 24px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.video-card-message::before {
    content: '🎬';
    font-size: 24px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 10. 转发卡片样式 */
.forward-card-content {
    background: rgba(0, 0, 0, 0.03);
    border-radius: 8px;
    padding: 8px 12px;
    margin: 4px 0;
    max-width: 280px;
    border-left: 3px solid #667eea;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 动态卡片样式 - 微信链接卡片风格 */
.dynamic-card-content {
    background: var(--card-bg);
    border-radius: 12px;
    padding: 12px;
    margin: 4px 0;
    max-width: 280px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    border: 1px solid var(--border);
    cursor: pointer;
    transition: all 0.2s ease;
}

.post-card-content {
    background: var(--card-bg);
    border-radius: 12px;
    padding: 12px;
    margin: 4px 0;
    max-width: 280px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    border: 1px solid var(--border);
}

.post-card-content .post-card-title {
    font-weight: 600;
    font-size: 14px;
    color: var(--text-primary);
    margin-bottom: 4px;
}

.post-card-content .post-card-author {
    font-size: 12px;
    color: var(--text-secondary);
    margin-bottom: 6px;
}

.post-card-content .post-card-preview {
    font-size: 13px;
    color: var(--text-secondary);
    line-height: 1.4;
    margin-bottom: 8px;
    word-wrap: break-word;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.post-card-content .view-original-btn {
    background: none;
    border: none;
    color: var(--primary);
    font-size: 12px;
    cursor: pointer;
    padding: 2px 0;
}

.post-card-content .view-original-btn:hover {
    text-decoration: underline;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-card-content:hover {
    background: var(--bg-page);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-card-header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-card-author-avatar {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--nav-active-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-card-author-name {
    font-weight: 600;
    font-size: 14px;
    color: var(--text-primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-card-preview {
    font-size: 14px;
    color: var(--text-secondary);
    line-height: 1.4;
    margin-bottom: 8px;
    word-wrap: break-word;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-card-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 12px;
    color: var(--text-secondary);
    padding-top: 8px;
    border-top: 1px solid var(--border);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-card-footer::after {
    content: '›';
    font-size: 18px;
    color: var(--text-secondary);
    margin-left: 4px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-card-author-name {
    font-weight: 500;
    font-size: 14px;
    color: var(--text-primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-card-preview {
    font-size: 14px;
    color: var(--text-primary);
    line-height: 1.4;
    margin-bottom: 8px;
    word-wrap: break-word;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.forward-card-header {
    font-weight: bold;
    font-size: 0.85rem;
    margin-bottom: 6px;
    color: #667eea;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.forward-card-sender {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-bottom: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.forward-card-preview {
    font-size: 0.85rem;
    word-break: break-word;
    line-height: 1.4;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 7. 头像悬停效果（拍一拍提示） */
.message-avatar:hover {
    background: var(--bg-page);
    transform: scale(1.02);
    transition: all 0.2s;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 8. 自动回复频率输入框宽度 */
#auto-reply-interval {
    width: 80px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 9. 全局字体大小滑块实时预览 */
#global-font-size {
    width: 100%;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
#font-size-value {
    margin-left: 8px;
    font-weight: bold;
    color: var(--primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 10. 确保妈咪中心气泡预览正确 */
#global-bubble-preview {
    margin-top: 10px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 秘密日记日历样式 */
.secret-diary-controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    flex-wrap: wrap;
    gap: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.diary-date-selector {
    display: flex;
    align-items: center;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.diary-date-input {
    background: var(--bg-page);
    border: 1px solid var(--border);
    border-radius: 20px;
    padding: 6px 12px;
    font-size: 14px;
    color: var(--text-primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.diary-calendar-container {
    background: var(--card-bg);
    border-radius: 16px;
    padding: 12px;
    margin-bottom: 20px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.diary-calendar {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 6px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.diary-calendar .calendar-day {
    height: 48px;           /* 固定高度，宽度自适应 */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: var(--bg-page);
    border-radius: 12px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    padding: 4px;
    position: relative;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.diary-calendar .calendar-day.has-diary {
    background: var(--primary);
    color: white;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.diary-calendar .calendar-day.empty {
    background: transparent;
    cursor: default;
    opacity: 0.5;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.diary-calendar .day-number {
    font-size: 14px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 日记条目样式调整，移除编辑按钮相关 */
.diary-entries .diary-actions {
    display: none;  /* 隐藏编辑和删除按钮 */
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* ===== 用户新增修复样式 ===== */

/* 日历容器宽度 */
.diary-calendar-container {
    width: 100%;
    overflow-x: auto;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

@media (max-width: 400px) {
    .calendar-weekdays span {
        font-size: 12px;
        padding: 4px 0;
    }

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
    .diary-calendar .calendar-day {
        font-size: 12px;
        padding: 2px;
    }

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
    .day-number {
        font-size: 13px;
    }

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 一、全局滚动条隐藏 */
.chat-messages,
.page,
.mammy-center-content,
.settings-content,
.post-list,
.contact-list,
.modal-content,
.worldbook-list,
.npc-list,
.emotion-items {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.chat-messages::-webkit-scrollbar,
.page::-webkit-scrollbar,
.mammy-center-content::-webkit-scrollbar,
.settings-content::-webkit-scrollbar,
.post-list::-webkit-scrollbar,
.contact-list::-webkit-scrollbar,
.modal-content::-webkit-scrollbar,
.worldbook-list::-webkit-scrollbar,
.npc-list::-webkit-scrollbar,
.emotion-items::-webkit-scrollbar {
    display: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 二、1. 妈咪中心左右箭头错位修复 */
.tabs-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.tab-scroll-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.tab-scroll-btn.left {
    left: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.tab-scroll-btn.right {
    right: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.mammy-center-content .tabs {
    overflow-x: auto;
    padding: 0 30px;
    flex: 1;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 二、2. 气泡样式分组字体间隔 */
.settings-group h3 {
    margin-bottom: 15px;
    font-size: 16px;
    font-weight: 600;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.settings-group .form-group {
    margin-bottom: 15px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 二、4. 世界书管理条目需要框框 */
.worldbook-item {
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 12px;
    margin-bottom: 12px;
    background: var(--card-bg);
    transition: all 0.2s;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.worldbook-item:hover {
    background: var(--bg-page);
    transform: translateY(-2px);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.worldbook-item > div {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.worldbook-item button {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 18px;
    padding: 4px 8px;
    border-radius: 6px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.worldbook-item button:hover {
    background: var(--nav-active-bg);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 弹窗文字溢出修复 - 已合并到主规则中 */

/* 二、6. 自动生成部分区块加背景框，写手模板库布局调整 */
.auto-section {
    background: var(--bg-page);
    border-radius: 16px;
    padding: 16px;
    margin-bottom: 24px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.auto-section h4 {
    margin-bottom: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.writer-template-item {
    display: flex;
    flex-direction: column;
    background: var(--card-bg);
    border-radius: 12px;
    padding: 16px;
    margin-bottom: 16px;
    border: 1px solid var(--border);
}

.writer-template-item .template-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.writer-template-item .template-actions {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 6px;
}

.writer-template-item .edit-btn,
.writer-template-item .delete-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    line-height: 1;
    padding: 4px 8px;
    font-size: 13px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    white-space: nowrap;
    height: auto;
}

.writer-template-item .edit-btn {
    background: var(--primary);
    color: white;
}

.writer-template-item .delete-btn {
    background: #e53e3e;
    color: white;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.template-header h5 {
    font-size: 16px;
    font-weight: 600;
    margin: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.template-preview {
    font-size: 14px;
    color: var(--text-secondary);
    margin: 12px 0;
    line-height: 1.4;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.template-length {
    font-size: 0.7rem;
    color: var(--primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 三、角色设置页面头像居中且更大 */
.avatar-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 24px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.settings-avatar {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: var(--nav-active-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.settings-avatar span {
    font-size: 56px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.avatar-url-input {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: 14px;
    outline: none;
    box-sizing: border-box;
    margin-top: 10px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.avatar-hint {
    font-size: 0.7rem;
    color: var(--text-secondary);
    margin-top: 8px;
    text-align: center;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 三、聊天区表情面板布局 */
.emoji-content {
    display: block;
    padding: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.category {
    margin-bottom: 16px;
    display: block;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.category h3 {
    margin: 12px 0 8px 0;
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--text-primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
/* 表情网格 */
.emoji-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 4px;   /* 从6px改为4px，更紧凑但仍有呼吸感 */
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 单个表情项 */
.emoji-item {
    width: auto;
    height: 36px;
    min-width: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border-radius: 0;
    cursor: pointer;
    transition: transform 0.1s ease;
    font-size: 24px;
    padding: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.emoji-item:hover {
    transform: scale(1.1);   /* 仅放大，不加背景 */
    background: transparent;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.bottom-sheet .emoji-content {
    max-width: 100%;
    overflow-x: hidden;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.emoji-item:hover {
    background: var(--nav-active-bg);
    transform: scale(1.05);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.emoji-item img {
    width: 32px;
    height: 32px;
    object-fit: contain;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message img {
    max-width: 100px;
    max-height: 100px;
    width: auto;
    height: auto;
    border-radius: 8px;
    object-fit: contain;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 五、联系人页面添加弹窗布局优化 */
#create-group-modal .member-selection,
#create-character-modal .member-selection,
#partner-selector-modal .member-selection {
    display: grid !important;
    grid-template-columns: 1fr !important;   /* 单列，每个成员独占一行 */
    gap: 8px !important;
    max-height: 280px;
    overflow-y: auto;
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 16px;
    background: var(--bg-page);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#create-group-modal .member-item,
#create-character-modal .member-item {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 8px 12px !important;
    border-radius: 12px;
    background: var(--card-bg);
    width: 100%;
    box-sizing: border-box;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#create-group-modal .member-item input[type="checkbox"],
#create-character-modal .member-item input[type="checkbox"] {
    flex-shrink: 0;
    margin: 0;
    width: 18px;
    height: 18px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#create-group-modal .member-item label,
#create-character-modal .member-item label {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100%;
    cursor: pointer;
    overflow: hidden;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#create-group-modal .member-avatar,
#create-character-modal .member-avatar {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50%;
    background: var(--nav-active-bg);
    display: flex !important;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#create-group-modal .member-avatar span,
#create-character-modal .member-avatar span {
    font-size: 18px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#create-group-modal .member-item span,
#create-character-modal .member-item span {
    white-space: normal !important;
    word-break: break-word;
    overflow: visible !important;
    flex: 1;
    color: var(--text-primary) !important;
    font-size: 14px !important;
    line-height: 1.4;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 六、其他可能遗漏的滚动条 */
/* 强制隐藏所有滚动条 */
* {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
*::-webkit-scrollbar {
    display: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 消息合并样式 */
.message-pending {
    opacity: 0.7;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 系统消息样式 */
.system-message {
    text-align: center;
    font-size: 12px;
    color: #999;
    padding: 6px 12px;
    margin: 8px auto;
    width: fit-content;
    max-width: 80%;
    background: transparent;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 卡片消息样式（心声、图片、视频） */
.voice-card,
.image-card,
.video-card {
    background: linear-gradient(135deg, #f5f7fa 0%, #e9ecef 100%);
    border-radius: 16px;
    padding: 12px 16px;
    margin: 8px 0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    border-left: 4px solid #667eea;
    display: flex;
    align-items: center;
    gap: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.voice-card .card-icon,
.image-card .card-icon,
.video-card .card-icon {
    font-size: 24px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.voice-card .card-content,
.image-card .card-content,
.video-card .card-content {
    flex: 1;
    font-size: 14px;
    line-height: 1.4;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 最近音乐面板新样式 */
.music-controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    flex-wrap: wrap;
    gap: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-date-selector {
    display: flex;
    align-items: center;
    gap: 8px;
    background: var(--bg-page);
    padding: 6px 12px;
    border-radius: 24px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-date-input {
    background: transparent;
    border: none;
    font-size: 14px;
    color: var(--text-primary);
    outline: none;
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 音乐卡片 - 黑胶唱片风格 */
.music-card {
    display: flex;
    background: linear-gradient(145deg, #2a2a2a 0%, #1a1a1a 100%);
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 10px 25px rgba(0,0,0,0.2);
    margin-bottom: 24px;
    color: #e0e0e0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-card-vinyl {
    width: 120px;
    background: #0a0a0a;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.vinyl-record {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: radial-gradient(circle at 30% 30%, #333, #111);
    box-shadow: 0 0 0 2px #444, 0 0 0 5px #222, inset 0 0 0 2px #555;
    position: relative;
    animation: spin 20s linear infinite;
    animation-play-state: paused;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-card:hover .vinyl-record {
    animation-play-state: running;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.vinyl-record::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 30px;
    height: 30px;
    background: #cc0000;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    box-shadow: inset 0 0 0 2px #880000, 0 0 0 2px #ff6666;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.vinyl-center {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 12px;
    background: silver;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

@keyframes spin {
    from { transform: rotate(0deg); }

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
    to { transform: rotate(360deg); }

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-card-content {
    flex: 1;
    padding: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-note {
    font-size: 16px;
    font-style: italic;
    color: #ffd966;
    margin-bottom: 16px;
    padding: 8px 12px;
    background: rgba(255,255,255,0.1);
    border-radius: 20px;
    display: inline-block;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-song-list {
    margin-top: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-song-item {
    display: flex;
    align-items: flex-start;     /* 改为顶部对齐 */
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid rgba(255,255,255,0.1);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-song-num {
    font-size: 14px;
    font-weight: bold;
    width: 28px;
    color: #ffd966;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-play-icon {
    font-size: 12px;
    color: #ffd966;
    cursor: pointer;
    transition: transform 0.1s;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-play-icon:hover {
    transform: scale(1.2);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-song-info {
    flex: 1;
    min-width: 0; /* 防止溢出 */
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-song-name {
    font-size: 15px;
    font-weight: 500;
    word-break: break-word;      /* 允许单词内换行 */
    line-height: 1.3;
    overflow-wrap: break-word;   /* 确保长单词能正常换行 */
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-song-artist {
    font-size: 12px;
    opacity: 0.7;
    word-break: break-word;
    line-height: 1.3;
    overflow-wrap: break-word;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-share-btn {
    background: rgba(255,255,255,0.15);
    border: none;
    border-radius: 20px;
    padding: 4px 12px;
    color: white;
    font-size: 12px;
    cursor: pointer;
    transition: all 0.2s;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-share-btn:hover {
    background: rgba(255,255,255,0.3);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 统计排名区域 */
.music-stats-container {
    background: var(--card-bg);
    border-radius: 20px;
    padding: 16px;
    margin-top: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-stats-container h3 {
    font-size: 18px;
    margin-bottom: 16px;
    padding-left: 8px;
    border-left: 4px solid var(--primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-rank-list {
    max-height: 300px;
    overflow-y: auto;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-rank-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 8px;
    border-bottom: 1px solid var(--border);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-rank-num {
    font-size: 18px;
    font-weight: bold;
    width: 36px;
    color: var(--primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-rank-info {
    flex: 1;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-rank-name {
    font-size: 15px;
    font-weight: 500;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-rank-artist {
    font-size: 12px;
    color: var(--text-secondary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-rank-count {
    font-size: 12px;
    color: var(--text-secondary);
    background: var(--bg-page);
    padding: 4px 8px;
    border-radius: 16px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-empty {
    text-align: center;
    padding: 40px 20px;
    background: var(--bg-page);
    border-radius: 24px;
    color: var(--text-secondary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-empty-icon {
    font-size: 48px;
    margin-bottom: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 任务清单便签纸样式 */
.task-list-container {
    margin-top: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-note {
    position: relative;
    display: flex;
    justify-content: center;
    margin-bottom: 30px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-pin {
    position: absolute;
    top: -18px;
    left: 50%;
    transform: translateX(-50%);
    width: 28px;
    height: 28px;
    background: radial-gradient(circle, #ff5e5e, #c0392b);
    border-radius: 50%;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    z-index: 3;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-pin::before {
    content: '';
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translateX(-50%);
    width: 4px;
    height: 10px;
    background: #7f8c8d;
    border-radius: 2px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-paper {
    background: #fffef7;
    background-image: repeating-linear-gradient(transparent, transparent 29px, #d4e6f1 29px, #d4e6f1 30px);
    border-radius: 4px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.8);
    width: 100%;
    max-width: 340px;
    padding: 24px 16px 20px 40px;
    position: relative;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 左边孔洞 */
.sticky-paper::before {
    content: '';
    position: absolute;
    left: 12px;
    top: 20px;
    bottom: 20px;
    width: 10px;
    background: repeating-linear-gradient(to bottom, transparent, transparent 28px, #fffef7 28px, #fffef7 32px);
    border-right: 1px dashed #cbd5e0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-paper::after {
    content: '';
    position: absolute;
    left: 16px;
    top: 20px;
    bottom: 20px;
    width: 2px;
    background: repeating-linear-gradient(to bottom, transparent, transparent 28px, #a0aec0 28px, #a0aec0 32px);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-header {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 16px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-date {
    font-size: 12px;
    color: #718096;
    background: #edf2f7;
    padding: 2px 8px;
    border-radius: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-tasks {
    margin: 8px 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
    padding-bottom: 8px;
    border-bottom: 1px solid #e2e8f0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-checkbox {
    flex-shrink: 0;
    margin-top: 2px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-checkbox input {
    width: 18px;
    height: 18px;
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-content {
    flex: 1;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-text {
    font-size: 15px;
    line-height: 1.4;
    color: #2d3748;
    word-break: break-word;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-text.task-crossed {
    text-decoration: line-through;
    color: #a0aec0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-note {
    font-size: 12px;
    color: #718096;
    margin-top: 4px;
    font-style: italic;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-time {
    font-size: 10px;
    color: #a0aec0;
    margin-top: 2px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-status-icon {
    font-size: 16px;
    flex-shrink: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-footer {
    margin-top: 16px;
    text-align: right;
    font-size: 10px;
    color: #a0aec0;
    border-top: 1px solid #e2e8f0;
    padding-top: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-date-input {
    background: var(--bg-page);
    border: 1px solid var(--border);
    border-radius: 20px;
    padding: 6px 12px;
    font-size: 14px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-error {
    text-align: center;
    padding: 40px;
    color: var(--text-secondary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 转账卡片样式 */
.transfer-card {
    background: #f9d56e;  /* 金黄色 */
    border-radius: 12px;
    padding: 12px;
    margin: 8px 0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    display: flex;
    align-items: center;
    gap: 12px;
    position: relative; /* 为接收标记定位 */
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-card.received {
    opacity: 0.7;
    filter: grayscale(0.2);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-card.refunded {
    opacity: 0.7;
    filter: grayscale(0.3);
    background: #ffebee; /* 浅红色背景 */
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-card-icon {
    font-size: 28px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-card-details {
    flex: 1;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-card-amount {
    font-size: 18px;
    font-weight: bold;
    color: #b45f06;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-card-sender {
    font-size: 12px;
    color: #6b4c1a;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-card-arrow {
    font-size: 20px;
    color: #b45f06;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-received-mark {
    position: absolute;
    top: 4px;
    right: 8px;
    font-size: 12px;
    color: #4caf50;
    font-weight: bold;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.transfer-refunded-mark {
    position: absolute;
    top: 4px;
    right: 8px;
    font-size: 12px;
    color: #f44336;  /* 红色 */
    font-weight: bold;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 转账接收卡片样式 */
.transfer-received-card {
    background: #e8f5e9;  /* 浅绿色 */
    border-radius: 12px;
    padding: 12px;
    margin: 8px 0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;  /* 与转账卡片保持一致 */
    box-sizing: border-box;  /* 确保宽度计算一致 */
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-received-card .transfer-card-icon {
    font-size: 28px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-received-card .transfer-card-details {
    flex: 1;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-received-card .transfer-card-amount {
    font-size: 18px;
    font-weight: bold;
    color: #2e7d32;  /* 深绿色 */
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-received-card .transfer-card-sender {
    font-size: 12px;
    color: #1b5e20;  /* 深绿色 */
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-received-check {
    font-size: 24px;
    color: #4caf50;
    font-weight: bold;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
/* 转账退回卡片样式 */
.transfer-refunded-card {
    background: #ffebee;
    border-radius: 12px;
    padding: 12px;
    margin: 8px 0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    display: flex;
    align-items: center;
    gap: 12px;
    border-left: 4px solid #f44336;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-refunded-card .transfer-card-icon {
    font-size: 28px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-refunded-card .transfer-card-details {
    flex: 1;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-refunded-card .transfer-card-amount {
    font-size: 18px;
    font-weight: bold;
    color: #c62828;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-refunded-card .transfer-card-sender {
    font-size: 12px;
    color: #b71c1c;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.transfer-refunded-check {
    font-size: 24px;
    color: #f44336;
    font-weight: bold;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-pending .message-bubble {
    position: relative;
    padding-right: 24px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.spinner {
    width: 16px;
    height: 16px;
    border: 2px solid var(--border);
    border-top: 2px solid var(--primary);
    border-radius: 50%;
    animation: spin 1s linear infinite;
    display: inline-block;
    margin-left: 8px;
    vertical-align: middle;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
@keyframes spin {
    0% { transform: rotate(0deg); }

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
    100% { transform: rotate(360deg); }

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 写手模板弹窗专属优化 */
#writer-template-modal .modal-body {
    padding: 24px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#writer-template-modal .form-group {
    margin-bottom: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#writer-template-modal .modal-footer {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    gap: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 确保写手模板弹窗宽度与其他弹窗一致 */
/* 写手模板弹窗保持与全局一致的宽度和高度 */
#writer-template-modal .modal-content {
    width: calc(100% - 4px);    /* 统一为左右各2px */
    max-width: 500px;           /* 与全局一致 */
    max-height: 65vh;           /* 与全局一致，弹窗缩短 */
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 任务清单、日记、音乐面板样式 */
.task-controls, .music-controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--border);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.last-update {
    font-size: 12px;
    color: var(--text-secondary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-list-content, .diary-entries, .mood-entries, .music-list {
    max-height: calc(100vh - 200px);
    overflow-y: auto;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-item {
    display: flex;
    align-items: center;
    padding: 10px;
    border-bottom: 1px solid var(--border);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-item input[type="checkbox"] {
    margin-right: 10px;
    width: 18px;
    height: 18px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-item.completed {
    text-decoration: line-through;
    color: var(--text-secondary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-date-group {
    margin-bottom: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-date-group h3 {
    font-size: 14px;
    color: var(--text-secondary);
    margin-bottom: 10px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 秘密日记样式 */
.secret-diary-content {
    background: #f9f5e9;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><text x="5" y="15" font-family="Georgia" font-size="12" fill="%23d4b896" opacity="0.2">✒️</text></svg>');
    font-family: Georgia, serif;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.diary-entry {
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid #d4b896;
    border-radius: 5px;
    padding: 15px;
    margin-bottom: 15px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.diary-header {
    display: flex;
    flex-direction: column;      /* 改为垂直排列 */
    align-items: flex-start;
    gap: 6px;
    margin-bottom: 12px;
    font-size: 14px;
    color: #6d4c41;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.diary-weather, .diary-mood {
    font-size: 18px;
    margin: 0 5px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.diary-location {
    font-style: italic;
    color: var(--text-secondary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.diary-content {
    line-height: 1.6;
    color: #4e342e;
    white-space: pre-wrap;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.diary-actions {
    margin-top: 10px;
    text-align: right;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.diary-actions button {
    background: #6d4c41;
    color: white;
    border: none;
    padding: 5px 10px;
    border-radius: 3px;
    cursor: pointer;
    font-size: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 心情日记样式 */
.mood-entry {
    display: flex;
    align-items: center;
    padding: 10px;
    border-bottom: 1px solid var(--border);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.mood-icon {
    font-size: 24px;
    margin-right: 15px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.mood-content {
    flex: 1;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.mood-date {
    font-size: 12px;
    color: var(--text-secondary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 音乐列表样式 */
.music-item {
    display: flex;
    align-items: center;
    padding: 10px;
    border-bottom: 1px solid var(--border);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-icon {
    font-size: 20px;
    margin-right: 15px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-info {
    flex: 1;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-name {
    font-weight: 500;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-artist {
    font-size: 12px;
    color: var(--text-secondary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 心情日记日历样式 */
.mood-diary-controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--border);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.mood-calendar-container {
    background: var(--card-bg);
    border-radius: 16px;
    padding: 12px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.calendar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    font-weight: bold;
    font-size: 18px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.calendar-nav {
    background: var(--nav-active-bg);
    border: none;
    padding: 6px 12px;
    border-radius: 20px;
    cursor: pointer;
    font-size: 14px;
    color: var(--text-primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.calendar-weekdays {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 6px;
    text-align: center;
    font-weight: 600;
    color: var(--text-secondary);
    margin: 0;
    padding: 0;
    width: 100%;
    margin-bottom: 8px;
    font-size: 14px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.mood-calendar {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 6px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.calendar-day {
    height: 48px;          /* 固定高度，宽度由 grid 决定 */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: var(--bg-page);
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s;
    font-size: 14px;
    font-weight: 500;
    padding: 4px;
    position: relative;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.calendar-day.empty {
    background: transparent;
    cursor: default;
    opacity: 0.5;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.calendar-day.has-mood {
    background: var(--primary);
    color: white;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.calendar-day .day-number {
    font-size: 14px;
    font-weight: 500;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.calendar-day .day-emoji {
    font-size: 24px;
    margin-top: 2px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 便签纸样式 */
/* 任务清单便签纸样式 */
.task-list-container {
    margin-top: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-note {
    position: relative;
    display: flex;
    justify-content: center;
    margin-bottom: 30px;
    overflow: visible;          /* 确保图钉可见 */
    padding-top: 20px;          /* 给图钉留出空间 */
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-pin {
    position: absolute;
    top: -8px;                  /* 向上移动更多 */
    left: 50%;
    transform: translateX(-50%);
    width: 32px;
    height: 32px;
    background: radial-gradient(circle, #ff6b6b, #c0392b);
    border-radius: 50%;
    box-shadow: 0 3px 10px rgba(0,0,0,0.3);
    z-index: 10;               /* 提高层级 */
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-pin::before {
    content: '';
    position: absolute;
    top: 12px;
    left: 50%;
    transform: translateX(-50%);
    width: 5px;
    height: 12px;
    background: #7f8c8d;
    border-radius: 3px;
    box-shadow: 0 1px 2px rgba(0,0,0,0.2);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-paper {
    background: #fffef7;
    background-image: repeating-linear-gradient(transparent, transparent 29px, #d4e6f1 29px, #d4e6f1 30px);
    border-radius: 4px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.8);
    width: 100%;
    max-width: 340px;
    padding: 24px 16px 20px 40px;
    position: relative;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 左边孔洞 */
.sticky-paper::before {
    content: '';
    position: absolute;
    left: 12px;
    top: 20px;
    bottom: 20px;
    width: 10px;
    background: repeating-linear-gradient(to bottom, transparent, transparent 28px, #fffef7 28px, #fffef7 32px);
    border-right: 1px dashed #cbd5e0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-paper::after {
    content: '';
    position: absolute;
    left: 16px;
    top: 20px;
    bottom: 20px;
    width: 2px;
    background: repeating-linear-gradient(to bottom, transparent, transparent 28px, #a0aec0 28px, #a0aec0 32px);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-header {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 16px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-date {
    font-size: 12px;
    color: #718096;
    background: #edf2f7;
    padding: 2px 8px;
    border-radius: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-tasks {
    margin: 8px 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
    padding-bottom: 8px;
    border-bottom: 1px solid #e2e8f0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-checkbox {
    flex-shrink: 0;
    margin-top: 2px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-checkbox input {
    width: 18px;
    height: 18px;
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-content {
    flex: 1;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-text {
    font-size: 15px;
    line-height: 1.4;
    color: #2d3748;
    word-break: break-word;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-text.task-crossed {
    text-decoration: line-through;
    color: #a0aec0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-note {
    font-size: 12px;
    color: #718096;
    margin-top: 4px;
    font-style: italic;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-time {
    font-size: 10px;
    color: #a0aec0;
    margin-top: 2px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-status-icon {
    font-size: 16px;
    flex-shrink: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-footer {
    margin-top: 16px;
    text-align: right;
    font-size: 10px;
    color: #a0aec0;
    border-top: 1px solid #e2e8f0;
    padding-top: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-date-input {
    background: var(--bg-page);
    border: 1px solid var(--border);
    border-radius: 20px;
    padding: 6px 12px;
    font-size: 14px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-error {
    text-align: center;
    padding: 40px;
    color: var(--text-secondary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 心情便签样式 */
.sticky-note.mood-sticky {
    max-width: 320px;
    background: #fff9e8;
    box-shadow: 0 8px 20px rgba(0,0,0,0.2);
    border-radius: 16px;
    overflow: hidden;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-note.mood-sticky .modal-header {
    background: #f5e6c8;
    border-bottom: 1px solid #e6d5b8;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-note.mood-sticky .modal-body {
    background: #fff9e8;
    padding: 20px;
    text-align: center;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-emoji {
    font-size: 64px;
    margin-bottom: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-mood {
    font-size: 24px;
    font-weight: bold;
    color: #8b6b3d;
    margin-bottom: 16px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.sticky-note-text {
    font-size: 16px;
    line-height: 1.5;
    color: #5d4037;
    font-family: 'Georgia', cursive;
    border-top: 1px dashed #e6d5b8;
    padding-top: 16px;
    margin-top: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 心情统计区域 */
.mood-stats-container {
    margin-top: 24px;
    padding: 16px;
    background: var(--card-bg);
    border-radius: 16px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* AI总结区域 */
.mood-summary-container {
    margin-top: 24px;
    padding: 16px;
    background: var(--card-bg);
    border-radius: 16px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.summary-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    flex-wrap: wrap;
    gap: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.summary-header h3 {
    font-size: 18px;
    font-weight: 600;
    margin: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.mood-summary-content {
    padding: 12px;
    background: var(--bg-page);
    border-radius: 12px;
    font-size: 14px;
    line-height: 1.6;
    color: var(--text-primary);
    white-space: pre-wrap;
    word-break: break-word;
    max-height: 200px;
    overflow-y: auto;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.stats-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    flex-wrap: wrap;
    gap: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.stats-header h3 {
    font-size: 18px;
    font-weight: 600;
    margin: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.stats-view-buttons {
    display: flex;
    gap: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.stats-view-btn {
    padding: 6px 12px;
    border: 1px solid var(--border);
    background: var(--bg-page);
    border-radius: 20px;
    cursor: pointer;
    font-size: 14px;
    transition: all 0.2s;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.stats-view-btn.active {
    background: var(--primary);
    color: white;
    border-color: var(--primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.charts-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.chart-box {
    flex: 1;
    min-width: 200px;
    background: var(--bg-page);
    border-radius: 12px;
    padding: 12px;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.chart-box canvas {
    max-width: 100%;
    height: auto;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 任务文字修改样式 - 涂黑效果 */
.task-text.task-blackout,
.task-text .blackout {
    background-color: #2d3748;
    color: transparent;
    border-radius: 3px;
    padding: 0 2px;
    user-select: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-text .blackout::selection {
    background-color: #2d3748;
    color: transparent;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-text.task-blackout::selection {
    background-color: #2d3748;
    color: transparent;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 任务文字修改样式 - 上标插入符 */
.task-text.task-superscript {
    position: relative;
    padding-right: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-text.task-superscript::after {
    content: '^';
    position: absolute;
    right: 0;
    top: -8px;
    font-size: 16px;
    color: #e53e3e;
    font-weight: bold;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 任务文字修改样式 - HTML 上标（来自 formatTaskText） */
.task-text sup.insertion {
    font-size: 12px;
    color: #e53e3e;
    font-weight: bold;
    vertical-align: super;
    margin-left: 1px;
    position: relative;
    top: -2px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 任务文字修改样式 - 下划线插入符 */
.task-text.task-underline-insert {
    position: relative;
    padding-bottom: 10px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-text.task-underline-insert::after {
    content: '^';
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    font-size: 16px;
    color: #e53e3e;
    font-weight: bold;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 任务文字修改样式 - 波浪线效果 */
.task-text.task-wavy {
    text-decoration: underline wavy #e53e3e;
    text-underline-offset: 2px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 任务文字修改样式 - 高亮效果 */
.task-text.task-highlight {
    background: linear-gradient(135deg, #ffd966 0%, #ffc107 100%);
    padding: 0 4px;
    border-radius: 3px;
    font-weight: 500;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 任务文字修改样式 - 虚线边框 */
.task-text.task-dashed {
    border: 1px dashed #a0aec0;
    border-radius: 4px;
    padding: 2px 6px;
    background: #f7fafc;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 任务文字修改样式 - 闪烁效果 */
.task-text.task-blink {
    animation: blink 1s step-start infinite;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

@keyframes blink {
    50% { opacity: 0.3; }

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 通知样式 */
.notification {
    position: fixed;
    top: 20px;
    left: 50%;
    transform: translateX(-50%) translateY(-20px);
    background: rgba(0, 0, 0, 0.75);
    color: white;
    padding: 10px 20px;
    border-radius: 30px;
    font-size: 14px;
    z-index: 9999;
    opacity: 0;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    backdrop-filter: blur(8px);
    white-space: nowrap;
    max-width: 80%;
    text-overflow: ellipsis;
    overflow: hidden;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.notification.show {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 成功类型的提示（可选） */
.notification.success {
    background: rgba(76, 175, 80, 0.9);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.notification.error {
    background: rgba(244, 67, 54, 0.9);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 动态发布 @ 功能样式 */
.dynamic-input-wrapper {
    position: relative;
    width: 100%;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-input-wrapper textarea {
    width: 100%;
    padding-right: 46px;
    box-sizing: border-box;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-mention-btn {
    position: absolute;
    right: 8px;
    bottom: 8px;
    background: var(--primary);
    color: white;
    border: none;
    font-size: 18px;
    font-weight: bold;
    cursor: pointer;
    padding: 0;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-mention-btn:hover {
    background: var(--primary-dark);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-mentioned-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 10px;
    min-height: 28px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-mention-tag {
    display: inline-flex;
    align-items: center;
    background: var(--primary);
    color: white;
    border-radius: 16px;
    padding: 4px 10px;
    font-size: 13px;
    gap: 6px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-mention-tag .remove-mention {
    cursor: pointer;
    font-weight: bold;
    margin-left: 4px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 动态卡片上的 @ 显示 */
.dynamic-mentioned {
    font-size: 0.9rem;
    color: var(--primary);
    margin-bottom: 6px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.dynamic-input-wrapper {
    position: relative;
    width: 100%;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-input-wrapper textarea {
    width: 100%;
    padding-right: 46px;
    box-sizing: border-box;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-mention-btn {
    position: absolute;
    right: 8px;
    bottom: 8px;
    background: var(--primary);
    color: white;
    border: none;
    font-size: 18px;
    font-weight: bold;
    cursor: pointer;
    padding: 0;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-mention-btn:hover {
    background: var(--primary-dark);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-mentioned-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 10px;
    min-height: 28px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-mention-tag {
    display: inline-flex;
    align-items: center;
    background: var(--primary);
    color: white;
    border-radius: 16px;
    padding: 4px 10px;
    font-size: 13px;
    gap: 6px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-mention-tag .remove-mention {
    cursor: pointer;
    font-weight: bold;
    margin-left: 4px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 动态卡片上的 @ 显示 */
.dynamic-mentioned {
    font-size: 0.9rem;
    color: var(--primary);
    margin-bottom: 6px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 任务文字修改样式 - 边框高亮 */
.task-text.task-border-highlight {
    border: 2px solid #667eea;
    border-radius: 6px;
    padding: 2px 6px;
    background: #f0f4ff;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 任务文字修改样式 - 斜体强调 */
.task-text.task-emphasis {
    font-style: italic;
    color: #e53e3e;
    font-weight: 600;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 任务文字修改样式 - 下标效果 */
.task-text.task-subscript {
    position: relative;
    padding-right: 16px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-text.task-subscript::after {
    content: '↓';
    position: absolute;
    right: 0;
    bottom: -4px;
    font-size: 14px;
    color: #38a169;
    font-weight: bold;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 日历选中高亮 */
.diary-calendar .calendar-day.selected {
    background: rgba(102,126,234,0.2) !important;
    color: inherit !important;
    border: 2px solid #667eea !important;
    box-shadow: none !important;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 红包卡片样式 */
.redpacket-card {
    display: flex;
    align-items: center;
    background: #fa9d3b;
    border-radius: 12px;
    padding: 12px;
    color: white;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    min-width: 200px;
    transition: opacity 0.2s;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.redpacket-card.finished {
    opacity: 0.6;
    filter: grayscale(0.5);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.redpacket-icon {
    font-size: 32px;
    margin-right: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.redpacket-info {
    flex: 1;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.redpacket-message {
    font-weight: 600;
    margin-bottom: 4px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.redpacket-desc {
    font-size: 12px;
    opacity: 0.9;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.redpacket-action {
    background: rgba(255,255,255,0.3);
    border-radius: 50%;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 16px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 心情日记便签纸样式 - 强制覆盖 */
#mood-sticky-modal .modal-content.sticky-note {
    max-width: 320px !important;
    background: #fff9e8 !important;
    box-shadow: 0 8px 20px rgba(0,0,0,0.2) !important;
    border-radius: 16px !important;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#mood-sticky-modal .modal-content.sticky-note .modal-header {
    background: #f5e6c8 !important;
    border-bottom: 1px solid #e6d5b8 !important;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#mood-sticky-modal .modal-content.sticky-note .modal-body {
    background: #fff9e8 !important;
    padding: 20px !important;
    text-align: center !important;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#mood-sticky-modal .sticky-emoji {
    font-size: 64px !important;
    margin-bottom: 12px !important;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#mood-sticky-modal .sticky-mood {
    font-size: 24px !important;
    font-weight: bold !important;
    color: #8b6b3d !important;
    margin-bottom: 16px !important;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#mood-sticky-modal .sticky-note-text {
    font-size: 16px !important;
    line-height: 1.5 !important;
    color: #5d4037 !important;
    font-family: 'Georgia', cursive !important;
    border-top: 1px dashed #e6d5b8 !important;
    padding-top: 16px !important;
    margin-top: 8px !important;
    text-align: left !important;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.diary-calendar .calendar-day.selected .day-number {
    color: inherit !important;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 多选模式样式 */
.multi-select-toolbar {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: var(--card-bg);
    border-top: 1px solid var(--border);
    padding: 10px 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 1000;
    backdrop-filter: blur(10px);
    box-shadow: 0 -2px 10px rgba(0,0,0,0.05);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 转发联系人列表样式 */
.forward-contact-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-contact-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px;
    border-radius: 12px;
    background: var(--bg-page);
    cursor: pointer;
    transition: background 0.2s;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-contact-item.selected {
    background: var(--primary);
    color: white;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-contact-item.selected .forward-name {
    color: white;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--nav-active-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-name {
    flex: 1;
    font-weight: 500;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-badge {
    font-size: 12px;
    background: rgba(0,0,0,0.1);
    padding: 2px 8px;
    border-radius: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-contact-item.selected .forward-badge {
    background: rgba(255,255,255,0.3);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 转发卡片样式 */
.forward-card-message {
    background: #f5f5f5;
    border-radius: 12px;
    padding: 12px;
    max-width: 260px;
    box-shadow: 0 1px 2px rgba(0,0,0,0.1);
    transition: all 0.2s;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-card-message:hover {
    background: #e9ecef;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-card-header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
    font-size: 14px;
    font-weight: 500;
    color: #2c3e50;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-card-icon {
    font-size: 16px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-card-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 12px;
    color: #95a5a6;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-card-detail-btn {
    background: none;
    border: none;
    color: #3498db;
    cursor: pointer;
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 4px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-card-detail-btn:hover {
    background: rgba(52, 152, 219, 0.1);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.toolbar-btn {
    background: transparent;
    border: none;
    font-size: 16px;
    padding: 8px 12px;
    cursor: pointer;
    color: var(--text-primary);
    border-radius: 8px;
    transition: background 0.2s;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.toolbar-btn.primary {
    color: var(--primary);
    font-weight: 500;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.toolbar-btn:hover {
    background: var(--bg-page);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.selected-count {
    font-size: 14px;
    color: var(--text-secondary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 消息复选框样式 */
.message-checkbox {
    flex-shrink: 0;
    margin-right: 8px;
    margin-top: 12px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.message-checkbox input {
    width: 20px;
    height: 20px;
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.message-row {
    display: flex;
    align-items: flex-start;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.message-row.selected {
    background-color: rgba(102, 126, 234, 0.1);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.forward-card-content {
    cursor: pointer;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.forward-card-expanded {
    max-height: none !important;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.member-item.selected {
    background: rgba(102, 126, 234, 0.1);
    border-radius: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* ========== 动态操作浮动菜单 ========== */
.dynamic-popup-menu {
    position: fixed;
    background: var(--card-bg);
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    padding: 6px 0;
    min-width: 120px;
    z-index: 3000;
    backdrop-filter: blur(8px);
    border: 1px solid var(--border);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* ========== 紧凑特色动态卡片 ========== */

/* 音乐卡片 - 两行布局 */
.dynamic-music-card {
    background: linear-gradient(135deg, #2a2a2a 0%, #1a1a1a 100%);
    border-radius: 20px;
    padding: 10px 12px;
    margin: 8px 0;
    color: #e0e0e0;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-main-row {
    display: flex;
    align-items: center;
    margin-bottom: 6px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-mini-vinyl {
    width: 36px;
    height: 36px;
    margin-right: 10px;
    flex-shrink: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.mini-vinyl-disc {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: radial-gradient(circle at 30% 30%, #444, #111);
    box-shadow: 0 0 0 2px #333, inset 0 0 0 2px #555;
    position: relative;
    animation: spin 12s linear infinite;
    animation-play-state: paused;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.dynamic-music-card:hover .mini-vinyl-disc {
    animation-play-state: running;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.mini-vinyl-disc::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    background: #cc0000;
    border-radius: 50%;
    transform: translate(-50%, -50%);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-info {
    flex: 1;
    min-width: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-title {
    font-weight: 600;
    font-size: 14px;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-artist {
    font-size: 12px;
    opacity: 0.7;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.music-share-note {
    font-size: 12px;
    font-style: italic;
    color: #ffd966;
    padding-top: 6px;
    border-top: 1px dashed rgba(255,255,255,0.2);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 心情卡片 - 小标签 */
.dynamic-mood-card {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    background: #fff9e8;
    border-radius: 24px;
    padding: 8px 12px;
    margin: 8px 0;
    box-shadow: 0 1px 4px rgba(0,0,0,0.05);
    border: 1px solid #f0e2c5;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.mood-emoji-badge {
    font-size: 28px;
    margin-right: 8px;
    background: #ffffff;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.mood-text-badge {
    background: #e6d5b8;
    color: #5d4037;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 600;
    margin-right: 10px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.mood-note-preview {
    font-size: 13px;
    color: #6d4c41;
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-right: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.mood-share-note {
    font-size: 11px;
    color: #a0815e;
    font-style: italic;
    width: 100%;
    margin-top: 6px;
    padding-top: 6px;
    border-top: 1px dashed #e6d5b8;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 任务卡片 - 迷你进度条 */
.dynamic-task-card {
    background: #e8f5e9;
    border-radius: 20px;
    padding: 10px 12px;
    margin: 8px 0;
    border-left: 4px solid #4caf50;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-header {
    display: flex;
    align-items: center;
    margin-bottom: 6px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-icon {
    font-size: 18px;
    margin-right: 6px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-title {
    font-weight: 600;
    font-size: 14px;
    color: #2e7d32;
    flex: 1;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-count {
    font-size: 14px;
    font-weight: 600;
    color: #1b5e20;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-progress-mini {
    height: 6px;
    background: #c8e6c9;
    border-radius: 3px;
    overflow: hidden;
    margin-bottom: 6px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.progress-fill {
    height: 100%;
    background: #4caf50;
    width: 0%;
    border-radius: 3px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.task-share-note {
    font-size: 12px;
    color: #2e7d32;
    font-style: italic;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 确保图片/视频卡片保持原有样式不受影响 */
.dynamic-card-media.image-card,
.dynamic-card-media.video-card {
    /* 原有样式保留 */
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

@keyframes spin {
    from { transform: rotate(0deg); }

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
    to { transform: rotate(360deg); }

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.popup-menu-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 16px;
    cursor: pointer;
    transition: background 0.15s;
    color: var(--text-primary);
    font-size: 15px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.popup-menu-item:hover {
    background: var(--bg-page);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.popup-menu-icon {
    font-size: 18px;
    width: 24px;
    text-align: center;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.popup-menu-text {
    flex: 1;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 转发详情弹窗样式 */
.forward-detail-modal {
    max-width: 90% !important;
    width: 320px !important;
    background: var(--card-bg);
    border-radius: 20px !important;
    overflow: hidden;
    box-shadow: 0 20px 35px -8px rgba(0,0,0,0.2);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.forward-detail-body {
    max-height: 500px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px;
    background: var(--bg-page);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 转发详情弹窗内的消息样式 */
.forward-detail-body .message-row {
    display: flex;
    align-items: flex-start;
    width: 100%;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-detail-body .message-row.left {
    justify-content: flex-start;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-detail-body .message-row.right {
    justify-content: flex-end;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-detail-body .message-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--nav-active-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-detail-body .message-bubble {
    word-wrap: break-word;
    max-width: 100%;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-detail-body .message-bubble.sent {
    background: var(--primary);
    color: white;
    border-radius: 18px 0 18px 18px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-detail-body .message-bubble.received {
    background: var(--card-bg);
    color: var(--text-primary);
    border-radius: 0 18px 18px 18px;
    box-shadow: 0 1px 1px rgba(0,0,0,0.05);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.forward-detail-body .message-name {
    font-size: 12px;
    color: var(--text-secondary);
    margin-left: 4px;
    margin-bottom: 2px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 回到顶部按钮 */
.back-to-top-btn {
    position: absolute;
    bottom: 70px;
    right: 16px;
    width: 50px;
    height: 50px;
    border-radius: 25px;
    background: var(--primary);
    color: white;
    font-size: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    z-index: 100;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.back-to-top-btn.show {
    opacity: 1;
    pointer-events: auto;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

.back-to-top-btn:hover {
    background: var(--primary-dark);
    transform: translateY(-2px);
    transition: all 0.2s ease;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 群公告栏 */
.group-notice-bar {
    background: #fff9e6;
    border-bottom: 1px solid var(--border);
    padding: 8px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 13px;
    color: var(--text-primary);
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.group-notice-bar.collapsed .notice-content {
    max-height: 1.4em;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.notice-content {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.notice-icon {
    font-size: 16px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
.notice-toggle-btn {
    background: none;
    border: none;
    font-size: 14px;
    cursor: pointer;
    color: var(--text-secondary);
    padding: 4px 8px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

/* 群设置页文字间距优化 */
.settings-group p.avatar-hint {
    margin-top: 8px;
    margin-bottom: 16px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#group-mute-list + p.avatar-hint {
    margin-bottom: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#group-admin-list + .form-group {
    margin-top: 20px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}

#npc-settings-group {
    margin-top: 10px;
}

/* 引用消息样式 */
.message-quote {
    border-left: 3px solid var(--primary);
    padding-left: 8px;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--text-secondary);
    opacity: 0.8;
    line-height: 1.4;
}
/* 强制写手模板按钮对齐 */
.writer-template-item .template-header {
    display: flex;
    align-items: center !important;
}

.writer-template-item .template-actions {
    display: flex;
    flex-direction: row;
    align-items: center !important;
    gap: 6px;
    margin: 0;
    padding: 0;
}

.writer-template-item .edit-btn,
.writer-template-item .delete-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    line-height: 1;
    padding: 4px 8px;
    font-size: 13px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    white-space: nowrap;
    height: auto;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    box-sizing: border-box;
}

/* 确保图标本身没有偏移 */
.writer-template-item .edit-btn,
.writer-template-item .delete-btn {
    transform: translateY(0);
}

/* 回复提示条 - 紧凑单行样式 */
/* 回复提示条容器 */
#reply-info {
    position: relative;          /* 作为绝对定位的锚点 */
    display: flex;
    align-items: center;
    padding: 4px 36px 4px 8px;  /* 右侧留出按钮空间 (36px) */
    background: var(--bg-page);
    border-radius: 16px;
    margin-bottom: 4px;
    width: 100%;
    box-sizing: border-box;
    height: 28px;               /* 强行固定高度 */
    overflow: hidden;
    white-space: nowrap;
}

/* 回复文字，允许单行省略 */
#reply-info #reply-text {
    display: block;              /* 块级以保证省略号生效 */
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 12px;
    line-height: 28px;          /* 垂直居中 */
    width: 100%;
}

/* 取消按钮，绝对锁定在右上角 */
#reply-info .cancel-reply {
    position: absolute;
    right: 4px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    background: none;
    border: none;
    color: var(--text-secondary);
    font-size: 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    z-index: 1;
}

#post-comment-input {
    flex: 1;
    padding: 8px 12px;
    border: 1px solid var(--border);
    border-radius: 16px;
    font-size: 14px;
    outline: none;
}

.comment-input-area .submit-btn {
    flex-shrink: 0;
    padding: 8px 14px;
    font-size: 13px;
}

/* 论坛主页帖子间距彻底重置 */
#forum-list .post-item {
    padding: 10px 14px !important;
}
#forum-list .post-avatar {
    margin-right: 10px !important;
    margin-bottom: 0 !important;
}
#forum-list .post-author-info {
    margin-bottom: 10px !important;
}
#forum-list .post-title {
    font-weight: 600 !important;
    font-size: 14px !important;
    margin-top: 0 !important;
    margin-bottom: 8px !important;
    line-height: 1.3 !important;
}
#forum-list .post-preview {
    font-size: 13px !important;
    color: var(--text-secondary) !important;
    line-height: 1.4 !important;
    margin-top: 0 !important;
    margin-bottom: 6px !important;
}
#forum-list .post-content {
    margin: 2px 0 4px !important;
}
#forum-list .post-actions {
    margin-top: 0 !important;
}

/* 强制聊天列表预览文字单行显示，超出显示省略号，保持布局固定 */
#chat-list .chat-item-last-msg {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: block !important;
}



/* 帖子标签样式 */
.post-tags {
    margin: 0 0 4px 0;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    line-height: 1;
}
.post-tag-item {
    display: inline-block;
    padding: 2px 8px;
    background: var(--primary);
    color: white;
    font-size: 12px;
    border-radius: 12px;
    cursor: pointer;
    transition: opacity 0.2s;
}
.post-tag-item:hover {
    opacity: 0.8;
}

#forum-list .post-content .post-tags:empty {
    display: none;
}

.hot-tag-all {
    background: transparent !important;
    border: 1px solid var(--border);
    color: var(--text-secondary) !important;
}
.post-detail-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    justify-content: flex-start;
    margin: 8px 0 12px 0;
}
/* 强制消息列表和联系人列表的字体不粗 */
.chat-item-name,
.chat-item-last-msg,
.chat-item-time,
.contact-name {
  font-weight: normal !important;
}
/* ========== 紧急修复：论坛帖子间距 ========== */
#forum-list .post-item {
    padding: 12px 14px 14px 14px !important;
    background-color: #ffffff !important;
    margin-bottom: 10px !important;
    border-radius: 8px !important;
}
#forum-list .post-item:last-child {
    margin-bottom: 0 !important;
}
#forum-list {
    background-color: transparent !important;
    padding-top: 10px !important;
    height: 100%;
    overflow-y: auto;
}

#dynamic-list {
    height: 100%;
    overflow-y: auto;
}
#forum-list .post-content {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    white-space: normal !important;
}
#forum-list .post-title {
    margin: 0 0 6px 0 !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
}
#forum-list .post-preview {
    margin: 0 0 8px 0 !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    color: var(--text-secondary) !important;
}
#forum-list .post-tags {
    margin: 0 0 6px 0 !important;
    line-height: 1.2 !important;
}
#forum-list .post-actions {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 4px !important;
    margin: 6px 0 0 0 !important;
}
#forum-list .post-actions button {
    flex-shrink: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 2px 8px !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
}
#forum-list .post-author-info {
    margin-bottom: 4px !important;
}
#forum-list .post-author-name,
#forum-list .post-time {
    display: inline-block !important;
}
#forum-list .post-author-name {
    color: var(--primary) !important;
}
#forum-page {
    background-color: #f5f5f5 !important;
}
/* 消息列表顶部微间距 */
#chat-list {
    padding-top: 6px !important;
}
/* 帖子详情：头像与内容之间的分割线 */
#post-detail-modal .post-detail-header {
    border-bottom: 1px solid var(--border);
    padding-bottom: 12px;
}

/* 热搜榜折叠按钮 */
.hot-rank-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 15px;
    background: var(--card-bg);
    border-bottom: 1px solid var(--border);
    cursor: pointer;
    font-size: 13px;
    font-weight: 600;
    color: #e53e3e;
}
.hot-rank-toggle:hover {
    background: var(--bg-page);
}

/* 热搜榜面板 */
.hot-rank-panel {
    background: var(--card-bg);
    border-bottom: 1px solid var(--border);
    padding: 8px 15px;
}
.hot-rank-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
}
.hot-rank-title {
    font-weight: 700;
    font-size: 14px;
    color: #e53e3e;
}
.hot-rank-tabs {
    display: flex;
    gap: 4px;
}
.hot-rank-tab {
    background: var(--bg-page);
    border: none;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 11px;
    cursor: pointer;
    color: var(--text-secondary);
}
.hot-rank-tab.active {
    background: var(--primary);
    color: white;
}

/* 热搜列表 */
.hot-rank-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.hot-rank-item {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    cursor: pointer;
    padding: 2px 0;
}
.hot-rank-index {
    font-weight: 700;
    color: #e53e3e;
    width: 18px;
    text-align: center;
}
.hot-rank-index.top3 {
    color: #fff;
    background: #e53e3e;
    border-radius: 4px;
    width: 18px;
    height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
}
.hot-rank-tag {
    color: var(--text-primary);
}
.hot-rank-tag:hover {
    color: var(--primary);
}
.hot-rank-count {
    font-size: 11px;
    color: var(--text-secondary);
}
/* 搜索栏样式 - 添加在 style.css 中 */
.forum-search-bar {
    padding: 8px 15px;
    background: var(--card-bg);
    border-bottom: 1px solid var(--border);
}

/* 列表底部加载动画 */
.loading-indicator {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 16px;
    color: var(--text-secondary);
    font-size: 13px;
}

.loading-dot {
    width: 8px;
    height: 8px;
    background: var(--primary);
    border-radius: 50%;
    animation: loadingBounce 0.6s infinite alternate;
}

.loading-dot:nth-child(2) { animation-delay: 0.2s; }
.loading-dot:nth-child(3) { animation-delay: 0.4s; }

@keyframes loadingBounce {
    from { transform: translateY(0); opacity: 1; }
    to { transform: translateY(-8px); opacity: 0.3; }
}

/* 修复动态评论被截断显示省略号的问题 */
.dynamic-comments .comment-text {
    overflow: visible;
    text-overflow: clip;
    display: block;
    -webkit-line-clamp: unset;
    max-height: none;
}

/* 评论点赞/踩样式 */
.comment-reactions {
    font-size: 12px;
    color: var(--text-secondary);
    margin-top: 4px;
    display: flex;
    gap: 12px;
}

.comment-reactions .reaction-like {
    color: #4caf50;
}

.comment-reactions .reaction-dislike {
    color: #f44336;
}

/* 热评标签样式 */
.hot-comment-badge {
    display: inline-block;
    background: linear-gradient(135deg, #ff6b6b, #ff8e53);
    color: white;
    font-size: 11px;
    padding: 2px 8px;
    border-radius: 10px;
    margin-right: 4px;
    font-weight: 600;
}

/* 可点击的赞踩按钮 */
.comment-reactions .clickable {
    cursor: pointer;
    transition: all 0.2s ease;
    padding: 2px 6px;
    border-radius: 4px;
}

.comment-reactions .clickable:hover {
    background-color: rgba(0, 0, 0, 0.05);
    transform: scale(1.05);
}

.reaction-like.clickable, .reaction-dislike.clickable {
    cursor: pointer;
    transition: transform 0.1s;
}

.reaction-like.clickable:hover, .reaction-dislike.clickable:hover {
    transform: scale(1.15);
}

.reaction-like.active, .reaction-dislike.active {
    filter: brightness(1.3);
}

/* 修复：帖子详情弹窗中的评论不限制行数 */
#post-detail-modal .comment-text {
    -webkit-line-clamp: unset;
    max-height: none;
    overflow: visible;
    display: block;
}
