/** * 这里是uni-app内置的常用样式变量 * * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App * */ /** * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 * * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 */ /* 颜色变量 */ /* 行为相关颜色 */ /* 文字基本颜色 */ /* 背景颜色 */ /* 边框颜色 */ /* 尺寸变量 */ /* 文字尺寸 */ /* 图片尺寸 */ /* Border Radius */ /* 水平间距 */ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ .uniui-cart-filled[data-v-d31e1c47]:before { content: "\e6d0"; } .uniui-gift-filled[data-v-d31e1c47]:before { content: "\e6c4"; } .uniui-color[data-v-d31e1c47]:before { content: "\e6cf"; } .uniui-wallet[data-v-d31e1c47]:before { content: "\e6b1"; } .uniui-settings-filled[data-v-d31e1c47]:before { content: "\e6ce"; } .uniui-auth-filled[data-v-d31e1c47]:before { content: "\e6cc"; } .uniui-shop-filled[data-v-d31e1c47]:before { content: "\e6cd"; } .uniui-staff-filled[data-v-d31e1c47]:before { content: "\e6cb"; } .uniui-vip-filled[data-v-d31e1c47]:before { content: "\e6c6"; } .uniui-plus-filled[data-v-d31e1c47]:before { content: "\e6c7"; } .uniui-folder-add-filled[data-v-d31e1c47]:before { content: "\e6c8"; } .uniui-color-filled[data-v-d31e1c47]:before { content: "\e6c9"; } .uniui-tune-filled[data-v-d31e1c47]:before { content: "\e6ca"; } .uniui-calendar-filled[data-v-d31e1c47]:before { content: "\e6c0"; } .uniui-notification-filled[data-v-d31e1c47]:before { content: "\e6c1"; } .uniui-wallet-filled[data-v-d31e1c47]:before { content: "\e6c2"; } .uniui-medal-filled[data-v-d31e1c47]:before { content: "\e6c3"; } .uniui-fire-filled[data-v-d31e1c47]:before { content: "\e6c5"; } .uniui-refreshempty[data-v-d31e1c47]:before { content: "\e6bf"; } .uniui-location-filled[data-v-d31e1c47]:before { content: "\e6af"; } .uniui-person-filled[data-v-d31e1c47]:before { content: "\e69d"; } .uniui-personadd-filled[data-v-d31e1c47]:before { content: "\e698"; } .uniui-arrowthinleft[data-v-d31e1c47]:before { content: "\e6d2"; } .uniui-arrowthinup[data-v-d31e1c47]:before { content: "\e6d3"; } .uniui-arrowthindown[data-v-d31e1c47]:before { content: "\e6d4"; } .uniui-back[data-v-d31e1c47]:before { content: "\e6b9"; } .uniui-forward[data-v-d31e1c47]:before { content: "\e6ba"; } .uniui-arrow-right[data-v-d31e1c47]:before { content: "\e6bb"; } .uniui-arrow-left[data-v-d31e1c47]:before { content: "\e6bc"; } .uniui-arrow-up[data-v-d31e1c47]:before { content: "\e6bd"; } .uniui-arrow-down[data-v-d31e1c47]:before { content: "\e6be"; } .uniui-arrowthinright[data-v-d31e1c47]:before { content: "\e6d1"; } .uniui-down[data-v-d31e1c47]:before { content: "\e6b8"; } .uniui-bottom[data-v-d31e1c47]:before { content: "\e6b8"; } .uniui-arrowright[data-v-d31e1c47]:before { content: "\e6d5"; } .uniui-right[data-v-d31e1c47]:before { content: "\e6b5"; } .uniui-up[data-v-d31e1c47]:before { content: "\e6b6"; } .uniui-top[data-v-d31e1c47]:before { content: "\e6b6"; } .uniui-left[data-v-d31e1c47]:before { content: "\e6b7"; } .uniui-arrowup[data-v-d31e1c47]:before { content: "\e6d6"; } .uniui-eye[data-v-d31e1c47]:before { content: "\e651"; } .uniui-eye-filled[data-v-d31e1c47]:before { content: "\e66a"; } .uniui-eye-slash[data-v-d31e1c47]:before { content: "\e6b3"; } .uniui-eye-slash-filled[data-v-d31e1c47]:before { content: "\e6b4"; } .uniui-info-filled[data-v-d31e1c47]:before { content: "\e649"; } .uniui-reload[data-v-d31e1c47]:before { content: "\e6b2"; } .uniui-micoff-filled[data-v-d31e1c47]:before { content: "\e6b0"; } .uniui-map-pin-ellipse[data-v-d31e1c47]:before { content: "\e6ac"; } .uniui-map-pin[data-v-d31e1c47]:before { content: "\e6ad"; } .uniui-location[data-v-d31e1c47]:before { content: "\e6ae"; } .uniui-starhalf[data-v-d31e1c47]:before { content: "\e683"; } .uniui-star[data-v-d31e1c47]:before { content: "\e688"; } .uniui-star-filled[data-v-d31e1c47]:before { content: "\e68f"; } .uniui-calendar[data-v-d31e1c47]:before { content: "\e6a0"; } .uniui-fire[data-v-d31e1c47]:before { content: "\e6a1"; } .uniui-medal[data-v-d31e1c47]:before { content: "\e6a2"; } .uniui-font[data-v-d31e1c47]:before { content: "\e6a3"; } .uniui-gift[data-v-d31e1c47]:before { content: "\e6a4"; } .uniui-link[data-v-d31e1c47]:before { content: "\e6a5"; } .uniui-notification[data-v-d31e1c47]:before { content: "\e6a6"; } .uniui-staff[data-v-d31e1c47]:before { content: "\e6a7"; } .uniui-vip[data-v-d31e1c47]:before { content: "\e6a8"; } .uniui-folder-add[data-v-d31e1c47]:before { content: "\e6a9"; } .uniui-tune[data-v-d31e1c47]:before { content: "\e6aa"; } .uniui-auth[data-v-d31e1c47]:before { content: "\e6ab"; } .uniui-person[data-v-d31e1c47]:before { content: "\e699"; } .uniui-email-filled[data-v-d31e1c47]:before { content: "\e69a"; } .uniui-phone-filled[data-v-d31e1c47]:before { content: "\e69b"; } .uniui-phone[data-v-d31e1c47]:before { content: "\e69c"; } .uniui-email[data-v-d31e1c47]:before { content: "\e69e"; } .uniui-personadd[data-v-d31e1c47]:before { content: "\e69f"; } .uniui-chatboxes-filled[data-v-d31e1c47]:before { content: "\e692"; } .uniui-contact[data-v-d31e1c47]:before { content: "\e693"; } .uniui-chatbubble-filled[data-v-d31e1c47]:before { content: "\e694"; } .uniui-contact-filled[data-v-d31e1c47]:before { content: "\e695"; } .uniui-chatboxes[data-v-d31e1c47]:before { content: "\e696"; } .uniui-chatbubble[data-v-d31e1c47]:before { content: "\e697"; } .uniui-upload-filled[data-v-d31e1c47]:before { content: "\e68e"; } .uniui-upload[data-v-d31e1c47]:before { content: "\e690"; } .uniui-weixin[data-v-d31e1c47]:before { content: "\e691"; } .uniui-compose[data-v-d31e1c47]:before { content: "\e67f"; } .uniui-qq[data-v-d31e1c47]:before { content: "\e680"; } .uniui-download-filled[data-v-d31e1c47]:before { content: "\e681"; } .uniui-pyq[data-v-d31e1c47]:before { content: "\e682"; } .uniui-sound[data-v-d31e1c47]:before { content: "\e684"; } .uniui-trash-filled[data-v-d31e1c47]:before { content: "\e685"; } .uniui-sound-filled[data-v-d31e1c47]:before { content: "\e686"; } .uniui-trash[data-v-d31e1c47]:before { content: "\e687"; } .uniui-videocam-filled[data-v-d31e1c47]:before { content: "\e689"; } .uniui-spinner-cycle[data-v-d31e1c47]:before { content: "\e68a"; } .uniui-weibo[data-v-d31e1c47]:before { content: "\e68b"; } .uniui-videocam[data-v-d31e1c47]:before { content: "\e68c"; } .uniui-download[data-v-d31e1c47]:before { content: "\e68d"; } .uniui-help[data-v-d31e1c47]:before { content: "\e679"; } .uniui-navigate-filled[data-v-d31e1c47]:before { content: "\e67a"; } .uniui-plusempty[data-v-d31e1c47]:before { content: "\e67b"; } .uniui-smallcircle[data-v-d31e1c47]:before { content: "\e67c"; } .uniui-minus-filled[data-v-d31e1c47]:before { content: "\e67d"; } .uniui-micoff[data-v-d31e1c47]:before { content: "\e67e"; } .uniui-closeempty[data-v-d31e1c47]:before { content: "\e66c"; } .uniui-clear[data-v-d31e1c47]:before { content: "\e66d"; } .uniui-navigate[data-v-d31e1c47]:before { content: "\e66e"; } .uniui-minus[data-v-d31e1c47]:before { content: "\e66f"; } .uniui-image[data-v-d31e1c47]:before { content: "\e670"; } .uniui-mic[data-v-d31e1c47]:before { content: "\e671"; } .uniui-paperplane[data-v-d31e1c47]:before { content: "\e672"; } .uniui-close[data-v-d31e1c47]:before { content: "\e673"; } .uniui-help-filled[data-v-d31e1c47]:before { content: "\e674"; } .uniui-paperplane-filled[data-v-d31e1c47]:before { content: "\e675"; } .uniui-plus[data-v-d31e1c47]:before { content: "\e676"; } .uniui-mic-filled[data-v-d31e1c47]:before { content: "\e677"; } .uniui-image-filled[data-v-d31e1c47]:before { content: "\e678"; } .uniui-locked-filled[data-v-d31e1c47]:before { content: "\e668"; } .uniui-info[data-v-d31e1c47]:before { content: "\e669"; } .uniui-locked[data-v-d31e1c47]:before { content: "\e66b"; } .uniui-camera-filled[data-v-d31e1c47]:before { content: "\e658"; } .uniui-chat-filled[data-v-d31e1c47]:before { content: "\e659"; } .uniui-camera[data-v-d31e1c47]:before { content: "\e65a"; } .uniui-circle[data-v-d31e1c47]:before { content: "\e65b"; } .uniui-checkmarkempty[data-v-d31e1c47]:before { content: "\e65c"; } .uniui-chat[data-v-d31e1c47]:before { content: "\e65d"; } .uniui-circle-filled[data-v-d31e1c47]:before { content: "\e65e"; } .uniui-flag[data-v-d31e1c47]:before { content: "\e65f"; } .uniui-flag-filled[data-v-d31e1c47]:before { content: "\e660"; } .uniui-gear-filled[data-v-d31e1c47]:before { content: "\e661"; } .uniui-home[data-v-d31e1c47]:before { content: "\e662"; } .uniui-home-filled[data-v-d31e1c47]:before { content: "\e663"; } .uniui-gear[data-v-d31e1c47]:before { content: "\e664"; } .uniui-smallcircle-filled[data-v-d31e1c47]:before { content: "\e665"; } .uniui-map-filled[data-v-d31e1c47]:before { content: "\e666"; } .uniui-map[data-v-d31e1c47]:before { content: "\e667"; } .uniui-refresh-filled[data-v-d31e1c47]:before { content: "\e656"; } .uniui-refresh[data-v-d31e1c47]:before { content: "\e657"; } .uniui-cloud-upload[data-v-d31e1c47]:before { content: "\e645"; } .uniui-cloud-download-filled[data-v-d31e1c47]:before { content: "\e646"; } .uniui-cloud-download[data-v-d31e1c47]:before { content: "\e647"; } .uniui-cloud-upload-filled[data-v-d31e1c47]:before { content: "\e648"; } .uniui-redo[data-v-d31e1c47]:before { content: "\e64a"; } .uniui-images-filled[data-v-d31e1c47]:before { content: "\e64b"; } .uniui-undo-filled[data-v-d31e1c47]:before { content: "\e64c"; } .uniui-more[data-v-d31e1c47]:before { content: "\e64d"; } .uniui-more-filled[data-v-d31e1c47]:before { content: "\e64e"; } .uniui-undo[data-v-d31e1c47]:before { content: "\e64f"; } .uniui-images[data-v-d31e1c47]:before { content: "\e650"; } .uniui-paperclip[data-v-d31e1c47]:before { content: "\e652"; } .uniui-settings[data-v-d31e1c47]:before { content: "\e653"; } .uniui-search[data-v-d31e1c47]:before { content: "\e654"; } .uniui-redo-filled[data-v-d31e1c47]:before { content: "\e655"; } .uniui-list[data-v-d31e1c47]:before { content: "\e644"; } .uniui-mail-open-filled[data-v-d31e1c47]:before { content: "\e63a"; } .uniui-hand-down-filled[data-v-d31e1c47]:before { content: "\e63c"; } .uniui-hand-down[data-v-d31e1c47]:before { content: "\e63d"; } .uniui-hand-up-filled[data-v-d31e1c47]:before { content: "\e63e"; } .uniui-hand-up[data-v-d31e1c47]:before { content: "\e63f"; } .uniui-heart-filled[data-v-d31e1c47]:before { content: "\e641"; } .uniui-mail-open[data-v-d31e1c47]:before { content: "\e643"; } .uniui-heart[data-v-d31e1c47]:before { content: "\e639"; } .uniui-loop[data-v-d31e1c47]:before { content: "\e633"; } .uniui-pulldown[data-v-d31e1c47]:before { content: "\e632"; } .uniui-scan[data-v-d31e1c47]:before { content: "\e62a"; } .uniui-bars[data-v-d31e1c47]:before { content: "\e627"; } .uniui-checkbox[data-v-d31e1c47]:before { content: "\e62b"; } .uniui-checkbox-filled[data-v-d31e1c47]:before { content: "\e62c"; } .uniui-shop[data-v-d31e1c47]:before { content: "\e62f"; } .uniui-headphones[data-v-d31e1c47]:before { content: "\e630"; } .uniui-cart[data-v-d31e1c47]:before { content: "\e631"; } @font-face { font-family: uniicons; src: url("../../assets/uniicons.32e978a5.ttf"); } .uni-icons[data-v-d31e1c47] { font-family: uniicons; text-decoration: none; text-align: center; } /** * 这里是uni-app内置的常用样式变量 * * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App * */ /** * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 * * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 */ /* 颜色变量 */ /* 行为相关颜色 */ /* 文字基本颜色 */ /* 背景颜色 */ /* 边框颜色 */ /* 尺寸变量 */ /* 文字尺寸 */ /* 图片尺寸 */ /* Border Radius */ /* 水平间距 */ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ .chat-sidebar-container[data-v-0c6c7315] { display: flex; flex-direction: column; align-items: center; width: 100%; height: 100%; background: linear-gradient(180deg, #faf9ff 0%, #f3f2f8 50%, #eeeef5 100%); color: black; box-sizing: border-box; } .sidebar-header[data-v-0c6c7315] { padding: 1.25rem 0.9375rem 0.9375rem; width: 100%; box-sizing: border-box; display: flex; flex-shrink: 0; justify-content: center; flex-direction: column; border-bottom: 0.03125rem solid rgba(170, 170, 255, 0.18); } .user-profile-card[data-v-0c6c7315] { padding: 0.5rem 0.75rem; width: 100%; display: flex; align-items: center; background: linear-gradient(135deg, #ffffff, #faf9ff); box-sizing: border-box; border-radius: 0.875rem; box-shadow: 0 0.125rem 0.625rem rgba(100, 100, 150, 0.08); border: 0.03125rem solid rgba(170, 170, 255, 0.12); transition: all 0.2s ease; } .user-profile-card[data-v-0c6c7315]:active { transform: scale(0.98); box-shadow: 0 0.0625rem 0.3125rem rgba(100, 100, 150, 0.12); } .user-profile-card .left[data-v-0c6c7315] { flex-shrink: 0; display: flex; justify-content: center; align-items: center; margin-right: 0.5rem; } .user-profile-card .left .avatar-preview[data-v-0c6c7315] { display: flex; justify-content: center; align-items: center; width: 3.125rem; height: 3.125rem; border-radius: 50%; overflow: hidden; border: 0.09375rem solid rgba(170, 170, 255, 0.3); box-shadow: 0 0.0625rem 0.25rem rgba(0, 0, 0, 0.06); } .user-profile-card .left .avatar-preview uni-image[data-v-0c6c7315] { width: 100%; height: 100%; object-fit: cover; } .user-profile-card .left .avatar-placeholder[data-v-0c6c7315] { display: flex; justify-content: center; align-items: center; box-sizing: border-box; border-radius: 50%; width: 3.125rem; height: 3.125rem; background: linear-gradient(135deg, #f5f3ff, #ede9fe); } .user-profile-card .center[data-v-0c6c7315] { flex: 1; height: 0; display: flex; flex-direction: column; align-items: start; justify-content: center; } .user-profile-card .center uni-text[data-v-0c6c7315]:first-child { font-size: 0.6875rem; color: #999; margin-bottom: 0.0625rem; } .user-profile-card .center uni-text[data-v-0c6c7315]:last-child { font-size: 0.9375rem; font-weight: 600; color: #1a1a2e; } .user-profile-card .right[data-v-0c6c7315] { flex-shrink: 0; margin-left: 0.3125rem; display: flex; align-items: center; background: rgba(16, 185, 129, 0.06); padding: 0.25rem 0.5rem; border-radius: 0.625rem; } .user-profile-card .right .status-dot[data-v-0c6c7315] { width: 0.375rem; height: 0.375rem; border-radius: 50%; background-color: #10B981; margin-right: 0.3125rem; box-shadow: 0 0 0.25rem rgba(16, 185, 129, 0.5); animation: statusDotPulse-0c6c7315 2s ease-in-out infinite; } @keyframes statusDotPulse-0c6c7315 { 0%, 100% { box-shadow: 0 0 0.25rem rgba(16, 185, 129, 0.5); transform: scale(1); } 50% { box-shadow: 0 0 0.5rem rgba(16, 185, 129, 0.6); transform: scale(1.15); } } .user-profile-card .right .status-text uni-text[data-v-0c6c7315] { font-size: 0.6875rem; color: #059669; font-weight: 500; } .new-chat-btn[data-v-0c6c7315] { margin-top: 0.75rem; width: 100%; padding: 0.8125rem; box-sizing: border-box; display: flex; justify-content: center; align-items: center; background: linear-gradient(135deg, #6c63ff, #4a45d1); border-radius: 0.75rem; box-shadow: 0 0.1875rem 0.625rem rgba(108, 99, 255, 0.3); transition: all 0.2s ease; } .new-chat-btn[data-v-0c6c7315]:active { transform: scale(0.97); box-shadow: 0 0.09375rem 0.3125rem rgba(108, 99, 255, 0.2); } .new-chat-btn uni-text[data-v-0c6c7315] { font-size: 0.875rem; font-weight: 600; color: #ffffff; letter-spacing: 0.03125rem; } .chat-history[data-v-0c6c7315] { width: 100%; padding: 0.625rem 0; box-sizing: border-box; flex: 1; height: 0; overflow-y: auto; overflow-x: hidden; } .chat-history[data-v-0c6c7315]::-webkit-scrollbar { width: 0.1875rem; } .chat-history[data-v-0c6c7315]::-webkit-scrollbar-thumb { background: rgba(108, 99, 255, 0.25); border-radius: 0.09375rem; } .chat-history[data-v-0c6c7315]::-webkit-scrollbar-track { background: transparent; } .history-header[data-v-0c6c7315] { width: 100%; padding: 0.625rem 0.9375rem; box-sizing: border-box; border-bottom: 0.03125rem solid rgba(170, 170, 255, 0.15); display: flex; justify-content: space-between; align-items: center; } .history-header .history-title-section[data-v-0c6c7315] { display: flex; flex-direction: column; } .history-header .history-title-section uni-text[data-v-0c6c7315]:first-child { font-size: 1rem; font-weight: 700; color: #1a1a2e; } .history-header .history-title-section uni-text[data-v-0c6c7315]:last-child { font-size: 0.6875rem; color: #999; margin-top: 0.0625rem; } .history-header .history-management[data-v-0c6c7315] { display: flex; } .history-header .history-management .history-management-btn[data-v-0c6c7315] { margin-left: 0.5rem; width: 1.75rem; height: 1.75rem; display: flex; justify-content: center; align-items: center; font-size: 0.8125rem; background-color: rgba(221, 221, 221, 0.4); border-radius: 0.4375rem; transition: all 0.15s ease; } .history-header .history-management .history-management-btn[data-v-0c6c7315]:active { transform: scale(0.9); } .history-header .history-management .icon-jia-style[data-v-0c6c7315] { background: rgba(16, 185, 129, 0.12); color: #059669; } .history-header .history-management .icon-duoxuan-style[data-v-0c6c7315] { color: #666666; } .history-header .history-management .icon-saochu-style[data-v-0c6c7315] { color: #ff4d4f; } .history-header .history-management .icon-quxiao-style[data-v-0c6c7315] { color: #6c63ff; box-sizing: border-box; } .history-header .history-management .icon-total_selection-style[data-v-0c6c7315] { color: #666666; } .history-header .history-management .icon-total_selection-style.active[data-v-0c6c7315] { color: #6c63ff; background: rgba(108, 99, 255, 0.12); } .history-header .history-management .icon-shanchu-style[data-v-0c6c7315] { color: #ff4d4f; } .history-search-wrap[data-v-0c6c7315] { display: flex; flex-direction: column; width: 100%; padding: 0.5rem 0.9375rem 0.1875rem 0.9375rem; box-sizing: border-box; } .history-search-wrap .history-search-inner[data-v-0c6c7315] { display: flex; width: 100%; padding: 0.375rem 0.6875rem; box-sizing: border-box; align-items: center; background-color: rgba(255, 255, 255, 0.6); border-radius: 0.875rem; border: 0.0625rem solid transparent; transition: all 0.25s ease; } .history-search-wrap .history-search-inner .search-icon[data-v-0c6c7315] { color: #999 !important; font-weight: bold; font-size: 1rem !important; } .history-search-wrap .history-search-inner .chat-search-icon[data-v-0c6c7315] { color: #6c63ff !important; font-weight: bold; font-size: 1rem !important; } .history-search-wrap .history-search-inner uni-input[data-v-0c6c7315] { margin-left: 0.375rem; box-sizing: border-box; font-size: 0.8125rem; color: #333; } .history-search-wrap .history-search-inner uni-input[data-v-0c6c7315]::-webkit-input-placeholder { color: #c0c0d0; } .history-search-wrap .history-search-inner uni-input[data-v-0c6c7315]::placeholder { color: #c0c0d0; } .history-search-wrap .history-search-inner.has-value[data-v-0c6c7315] { background-color: #ffffff; border-color: #6c63ff; box-shadow: 0 0 0 0.09375rem rgba(108, 99, 255, 0.08); } .chat-history-list[data-v-0c6c7315] { padding: 0.3125rem 0.9375rem; } .chat-history-list .chat-history-card[data-v-0c6c7315] { display: flex; align-items: center; border: 0.04688rem solid rgba(108, 99, 255, 0.25); background: linear-gradient(135deg, #ffffff, #faf9ff); border-radius: 0.75rem; padding: 0.75rem 0.75rem; margin-top: 0.375rem; box-sizing: border-box; transition: all 0.2s ease; } .chat-history-list .chat-history-card[data-v-0c6c7315]:active { transform: scale(0.98); } .chat-history-list .is-select-chat[data-v-0c6c7315] { border-color: #6c63ff; box-shadow: 0 0.125rem 0.5rem rgba(108, 99, 255, 0.15); background: linear-gradient(135deg, rgba(108, 99, 255, 0.06), rgba(108, 99, 255, 0.02)); } .chat-history-list .history-chat-checkbox[data-v-0c6c7315] { width: 1.125rem; height: 1.125rem; border-radius: 0.3125rem; display: flex; justify-content: center; align-items: center; border: 0.0625rem solid rgba(108, 99, 255, 0.5); margin-right: 0.375rem; flex-shrink: 0; } .chat-history-list .history-chat-avatar[data-v-0c6c7315] { width: 2rem; height: 2rem; border-radius: 0.5625rem; display: flex; justify-content: center; align-items: center; background: linear-gradient(135deg, rgba(108, 99, 255, 0.3), rgba(108, 99, 255, 0.15)); margin-left: 0; margin-right: 0.5rem; box-sizing: border-box; flex-shrink: 0; } .chat-history-list .friend-avatar[data-v-0c6c7315] { display: flex; justify-content: center; align-items: center; border-radius: 0.5625rem; width: 100%; height: 100%; overflow: hidden; } /** * 这里是uni-app内置的常用样式变量 * * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App * */ /** * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 * * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 */ /* 颜色变量 */ /* 行为相关颜色 */ /* 文字基本颜色 */ /* 背景颜色 */ /* 边框颜色 */ /* 尺寸变量 */ /* 文字尺寸 */ /* 图片尺寸 */ /* Border Radius */ /* 水平间距 */ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ .chat-page[data-v-5eb7b895] { position: relative; background: linear-gradient(180deg, #f5f4ff 0%, #f8f7fc 50%, #faf9fe 100%); } /* 笼罩层样式 */ .mask[data-v-5eb7b895] { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.45); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); z-index: 998; animation: fadeIn-5eb7b895 0.3s ease; } @keyframes fadeIn-5eb7b895 { from { opacity: 0; } to { opacity: 1; } } /* ================会话侧边栏样式================== */ .chat-sidebar[data-v-5eb7b895] { position: fixed; top: 0; left: 0; width: calc(100% - 3.125rem); max-width: 21.25rem; height: 100%; transform: translateX(-100%); transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1); z-index: 999; box-shadow: 0.25rem 0 0.9375rem rgba(0, 0, 0, 0.06); } .chat-sidebar.sidebar-show[data-v-5eb7b895] { transform: translateX(0); } /* =============================新建会话弹窗样式================== */ .ncd-overlay[data-v-5eb7b895] { position: fixed; width: 100%; height: 100%; left: 0; top: 0; display: flex; align-items: center; justify-content: center; background-color: rgba(30, 30, 50, 0.35); z-index: 1000; backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); animation: fadeIn-5eb7b895 0.25s ease; } .ncd-card[data-v-5eb7b895] { width: 90%; height: auto; background-color: #ffffff; border-radius: 1.25rem; padding: 1.5625rem 1.25rem; box-sizing: border-box; box-shadow: 0 0.625rem 1.875rem rgba(100, 100, 200, 0.12); animation: slideUp-5eb7b895 0.35s ease; } @keyframes slideUp-5eb7b895 { from { opacity: 0; transform: translateY(1.25rem) scale(0.96); } to { opacity: 1; transform: translateY(0) scale(1); } } .ncd-header[data-v-5eb7b895] { display: flex; justify-content: center; align-items: center; width: 100%; } .ncd-title-eng[data-v-5eb7b895] { display: flex; flex-shrink: 0; background: linear-gradient(135deg, #6c63ff, #4a45d1); padding: 0.1875rem 0.4375rem; border-radius: 0.375rem; justify-content: center; align-items: center; } .ncd-title-eng uni-text[data-v-5eb7b895] { color: #ffffff; font-weight: bold; font-size: 0.875rem; } .ncd-title-zh[data-v-5eb7b895] { margin-left: 0.3125rem; display: flex; flex: 1; height: 0; font-size: 1.125rem; font-weight: 700; color: #1a1a2e; } .ncd-header uni-icons[data-v-5eb7b895] { display: flex; flex-shrink: 0; } .ncd-options[data-v-5eb7b895] { display: flex; flex-direction: column; width: 100%; justify-content: center; align-items: center; margin-top: 0.625rem; box-sizing: border-box; } .ncd-option[data-v-5eb7b895] { width: 100%; background: #f8fafc; padding: 1.25rem 0.9375rem; display: flex; border-radius: 0.875rem; margin-top: 0.625rem; box-sizing: border-box; justify-content: center; align-items: center; transition: all 0.2s ease; border: 0.0625rem solid transparent; } .ncd-option[data-v-5eb7b895]:active { transform: scale(0.98); } .ncd-normal[data-v-5eb7b895] { border: 0.0625rem solid #e8edf3; } .ncd-normal[data-v-5eb7b895]:active { border-color: #c4c8d0; background: #f0f3f7; } .ncd-opt-icon[data-v-5eb7b895] { width: 2.5rem; height: 2.5rem; border-radius: 0.75rem; padding: 0.3125rem; box-sizing: border-box; display: flex; flex-shrink: 0; justify-content: center; align-items: center; } .ncd-normal .ncd-opt-icon[data-v-5eb7b895] { background: linear-gradient(135deg, #e2e8f0, #d9dfe8); } .ncd-opt-title[data-v-5eb7b895] { display: flex; flex-direction: column; margin: 0 0.5rem; box-sizing: border-box; justify-content: center; flex: 1; height: 0; } .ncd-opt-title-1[data-v-5eb7b895] { font-size: 0.9375rem; font-weight: 600; color: #1a1a2e; } .ncd-opt-title-2[data-v-5eb7b895] { font-size: 0.75rem; color: #888; margin-top: 0.125rem; } .arrow-right-style[data-v-5eb7b895] { display: flex; flex-shrink: 0; font-weight: bold !important; font-size: 0.875rem !important; color: #999 !important; } .ncd-intelligence[data-v-5eb7b895] { background: linear-gradient(135deg, #f8f5ff, #efe8ff); border: 0.0625rem solid #c4b5fd; } .ncd-intelligence[data-v-5eb7b895]:active { border-color: #a78bfa; background: linear-gradient(135deg, #f3efff, #e8dcff); } .ncd-intelligence .ncd-opt-icon[data-v-5eb7b895] { background: linear-gradient(135deg, #8b5cf6, #7c3aed); } /* ==========新建聊天列表相关====== */ .close-option-card[data-v-5eb7b895] { width: 100%; display: flex; justify-content: flex-end; } .close-option-card .iconfont[data-v-5eb7b895] { color: #ff4d4f !important; } .chat-option-list[data-v-5eb7b895] { display: flex; width: 100%; flex-direction: column; } .chat-option[data-v-5eb7b895] { display: flex; justify-content: flex-start; align-items: center; margin: 0.3125rem 0; padding: 0.5rem 0.625rem; border-radius: 0.625rem; box-sizing: border-box; transition: all 0.15s ease; } .chat-option[data-v-5eb7b895]:active { background: rgba(170, 170, 255, 0.08); } .chat-option .iconfont[data-v-5eb7b895] { font-size: 30px; } .option-name[data-v-5eb7b895] { font-size: 17px; font-weight: 500; margin-left: 12px; box-sizing: border-box; color: #333; } /* ================聊天容器============== */ .chat-wrapper[data-v-5eb7b895] { position: relative; width: 100%; height: 100%; display: flex; flex-direction: column; } /* ================聊天顶部样式============== */ .chat-hearder[data-v-5eb7b895] { width: 100%; height: auto; padding: 0.5rem 0.3125rem; box-sizing: border-box; display: flex; flex-shrink: 0; justify-content: flex-start; align-items: center; background: linear-gradient(180deg, rgba(255,255,255,0.95), rgba(255,255,255,0.8)); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-bottom: 0.03125rem solid rgba(170, 170, 255, 0.15); } .chat-btn-group[data-v-5eb7b895] { width: 100%; height: auto; display: flex; justify-content: flex-start; align-items: center; } .head-btn[data-v-5eb7b895] { padding: 0.375rem 0.4375rem; border: 0.04688rem solid rgba(170, 170, 255, 0.3); border-radius: 0.5625rem; margin: 0 0.3125rem; box-sizing: border-box; display: flex; justify-content: center; align-items: center; background: rgba(255, 255, 255, 0.7); transition: all 0.2s ease; } .head-btn[data-v-5eb7b895]:active { background: rgba(170, 170, 255, 0.1); transform: scale(0.95); } .chat-btn-group .head-btn:nth-child(1) .iconfont[data-v-5eb7b895] { color: #a78bfa; } .chat-btn-group .head-btn:nth-child(2) .iconfont[data-v-5eb7b895] { color: #6495ed; } .head-btn .iconfont[data-v-5eb7b895] { font-size: 1.5rem; } .log-out[data-v-5eb7b895] { /* background: #ffd4d4; */ } .log-out .iconfont[data-v-5eb7b895] { color: #ff4d4f; } /* ==========聊天主体部分========== */ .main-chat[data-v-5eb7b895] { display: flex; flex: 1; height: 0; width: 100%; flex-direction: column; } /* ==========聊天对话展示部分========== */ .chat-messages[data-v-5eb7b895] { display: flex; flex: 1; height: 0; width: 100%; padding: 0.625rem 0.75rem; box-sizing: border-box; flex-direction: column; overflow: auto; } .chat-messages[data-v-5eb7b895]::-webkit-scrollbar { width: 0.1875rem; } .chat-messages[data-v-5eb7b895]::-webkit-scrollbar-thumb { background: rgba(170, 170, 255, 0.3); border-radius: 0.09375rem; } .chat-messages[data-v-5eb7b895]::-webkit-scrollbar-track { background: transparent; } .chat-message[data-v-5eb7b895] { display: flex; align-items: flex-start; margin: 0.4375rem 0; box-sizing: border-box; animation: msgFadeIn-5eb7b895 0.3s ease; } @keyframes msgFadeIn-5eb7b895 { from { opacity: 0; transform: translateY(0.3125rem); } to { opacity: 1; transform: translateY(0); } } .message-user[data-v-5eb7b895] { flex-direction: row-reverse; } .chat-avatar[data-v-5eb7b895] { display: flex; justify-content: center; align-items: center; width: 2.25rem; height: 2.25rem; box-sizing: border-box; border-radius: 0.5rem; margin-right: 0.375rem; flex-shrink: 0; } .friend-avatar[data-v-5eb7b895] { display: flex; justify-content: center; align-items: center; border-radius: 0.5rem; width: 100%; height: 100%; overflow: hidden; } .chat-avatar-user[data-v-5eb7b895] { margin-right: 0; margin-left: 0.375rem; } .chat-content[data-v-5eb7b895] { width: auto; max-width: calc(100% - 3.75rem); height: auto; padding: 0.625rem 0.75rem; box-sizing: border-box; border-radius: 0.75rem; overflow-x: auto; font-size: 0.875rem; line-height: 1.65; position: relative; box-shadow: 0 0.0625rem 0.25rem rgba(0, 0, 0, 0.04); background: #ffffff; border: 0.03125rem solid #eeeef5; } .chat-content-user[data-v-5eb7b895] { background: linear-gradient(135deg, #c4b5fd, #b8a5f0); color: #fff; border: none; box-shadow: 0 0.125rem 0.375rem rgba(170, 170, 255, 0.3); border-bottom-right-radius: 0.25rem; } /* AI 回复气泡满屏 */ .chat-content-assistant[data-v-5eb7b895] { max-width: 100%; } .chat-content[data-v-5eb7b895]:not(.chat-content-user) { border-bottom-left-radius: 0.25rem; } /* 图片消息 */ .message-image[data-v-5eb7b895] { max-width: 9.375rem; border-radius: 0.375rem; margin: 0.25rem 0; } /* 文件列表 */ .message-file-list[data-v-5eb7b895] { margin: 0.3125rem 0; } /* 文件项 */ .file-item[data-v-5eb7b895] { margin: 0.1875rem 0; } /* 文件样式 */ .message-file[data-v-5eb7b895] { display: flex; align-items: center; padding: 0.4375rem 0.5625rem; background: rgba(255, 255, 255, 0.85); border-radius: 0.375rem; max-width: 10.9375rem; border: 0.03125rem solid #eeeef5; } .chat-content-user .message-file[data-v-5eb7b895] { background: rgba(255, 255, 255, 0.25); border-color: rgba(255, 255, 255, 0.3); } .file-icon[data-v-5eb7b895] { font-size: 1rem; margin-right: 0.375rem; } .file-name[data-v-5eb7b895] { flex: 1; font-size: 0.8125rem; color: #333; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .chat-content-user .file-name[data-v-5eb7b895] { color: #fff; } .file-size[data-v-5eb7b895] { font-size: 0.6875rem; color: #999; margin-left: 0.25rem; } .chat-content-user .file-size[data-v-5eb7b895] { color: rgba(255, 255, 255, 0.7); } /* ==========聊天输入容器部分========== */ .chat-interactive-container[data-v-5eb7b895] { display: flex; flex-shrink: 0; width: 100%; padding: 0.5rem 0.75rem 0.75rem; box-sizing: border-box; flex-direction: column; background: linear-gradient(180deg, rgba(255,255,255,0.7), rgba(255,255,255,0.95)); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-top: 0.03125rem solid rgba(170, 170, 255, 0.12); } .chat-interactive-group[data-v-5eb7b895] { display: flex; width: 100%; padding: 0.375rem 0; box-sizing: border-box; justify-content: flex-start; align-items: center; } .chat-interactive-btn[data-v-5eb7b895] { display: flex; align-items: center; justify-content: center; border: 0.04688rem solid #d4d4e0; border-radius: 0.5rem; padding: 0.375rem 0.625rem; margin-right: 0.5rem; box-sizing: border-box; font-size: 0.75rem; color: #666; background: #ffffff; transition: all 0.2s ease; } .chat-interactive-btn[data-v-5eb7b895]:active { border-color: #aaaaff; background: rgba(170, 170, 255, 0.08); transform: scale(0.96); } /* 思考中禁用态 */ .chat-interactive-btn.disabled[data-v-5eb7b895] { opacity: 0.45; pointer-events: none; border-color: #e0dfe8; color: #aaa; } .chat-input-container[data-v-5eb7b895] { display: flex; width: 100%; padding: 0.25rem 0.25rem 0.25rem 0.75rem; box-sizing: border-box; border: 0.0625rem solid #e0dff5; border-radius: 0.9375rem; align-items: flex-end; background: #ffffff; transition: all 0.25s ease; box-shadow: 0 0.0625rem 0.375rem rgba(100, 100, 150, 0.06); } .chat-input-container[data-v-5eb7b895]:focus-within { border-color: #aaaaff; box-shadow: 0 0 0 0.125rem rgba(170, 170, 255, 0.12), 0 0.125rem 0.5rem rgba(100, 100, 150, 0.08); } .message-input[data-v-5eb7b895] { flex: 1; max-height: 4.6875rem; min-height: 1.875rem; overflow-y: auto; margin: 0.125rem 0.3125rem; box-sizing: border-box; font-size: 0.875rem; color: #333; } .message-input[data-v-5eb7b895]::-webkit-input-placeholder { color: #c0c0d0; } .message-input[data-v-5eb7b895]::placeholder { color: #c0c0d0; } /* 思考中:输入容器禁态 */ .chat-input-container.input-disabled[data-v-5eb7b895] { border-color: #eae9f2; background: #f8f7fc; } /* 思考中:文本域禁用 */ .message-input[disabled][data-v-5eb7b895] { opacity: 0.5; color: #bbb; } /* 思考中:发送按钮禁用 */ .input-btn-group.disabled[data-v-5eb7b895] { opacity: 0.4; pointer-events: none; background: #c0c0d0; box-shadow: none; } .input-btn-group[data-v-5eb7b895] { flex-shrink: 0; display: flex; justify-content: center; align-items: center; padding: 0.4375rem; box-sizing: border-box; background: linear-gradient(135deg, #6c63ff, #8b7cfb); border-radius: 0.6875rem; width: 2.25rem; height: 2.25rem; box-shadow: 0 0.125rem 0.375rem rgba(108, 99, 255, 0.35); transition: all 0.2s ease; } .input-btn-group[data-v-5eb7b895]:active { transform: scale(0.92); box-shadow: 0 0.0625rem 0.1875rem rgba(108, 99, 255, 0.25); } .input-btn-group .iconfont[data-v-5eb7b895] { color: #fff; font-size: 1.125rem; } /* ai思考弹窗卡片 */ .ai-card[data-v-5eb7b895] { width: auto; border: 0.0625rem solid rgba(64, 158, 255, 0.3); box-shadow: 0 0.25rem 0.9375rem rgba(170, 170, 255, 0.2); border-radius: 1rem !important; } /* 内容布局 */ .thinking-content[data-v-5eb7b895] { display: flex; flex-direction: column; align-items: center; width: 100%; } /* 加载点点动画 */ .loading-dots[data-v-5eb7b895] { display: flex; width: 100%; align-items: center; justify-content: center; } .dot[data-v-5eb7b895] { width: 0.4375rem; height: 0.4375rem; margin: 0.1875rem; border-radius: 50%; background: linear-gradient(135deg, #409eff, #6db2ff); animation: dotBlink-5eb7b895 1.2s infinite ease-in-out; } @keyframes dotBlink-5eb7b895 { 0%, 100% { opacity: 0.3; transform: scale(0.7); } 50% { opacity: 1; transform: scale(1.2); } } .dot[data-v-5eb7b895]:nth-child(2) { animation-delay: 0.25s; } .dot[data-v-5eb7b895]:nth-child(3) { animation-delay: 0.5s; } /* 文字 */ .thinking-text[data-v-5eb7b895] { margin: 0.625rem 0; font-size: 20px; font-weight: 600; color: #409eff; } /* 思考弹窗中的中断按钮 */ .stop-thinking-btn[data-v-5eb7b895] { display: flex; align-items: center; justify-content: center; width: 100%; padding: 0.6875rem 0; margin-top: 0.625rem; border-radius: 0.75rem; font-size: 0.875rem; font-weight: 600; color: #ff4d4f; background: linear-gradient(135deg, rgba(255, 77, 79, 0.06), rgba(255, 77, 79, 0.02)); border: 0.0625rem solid rgba(255, 77, 79, 0.35); transition: all 0.2s ease; animation: pulseStop-5eb7b895 2s ease-in-out infinite; } .stop-thinking-btn[data-v-5eb7b895]:active { background: rgba(255, 77, 79, 0.12); border-color: #ff4d4f; transform: scale(0.97); } @keyframes pulseStop-5eb7b895 { 0%, 100% { border-color: rgba(255, 77, 79, 0.35); } 50% { border-color: rgba(255, 77, 79, 0.65); } } /* ========== 文件预览标签列表 ========== */ .image-list[data-v-5eb7b895] { width: 100%; padding: 0.25rem 0 0.0625rem; animation: fadeIn-5eb7b895 0.25s ease; } .image-tags[data-v-5eb7b895] { display: flex; flex-wrap: wrap; gap: 0.3125rem; } .image-tag[data-v-5eb7b895] { display: flex; align-items: center; padding: 0.1875rem 0.25rem 0.1875rem 0.5rem; background: linear-gradient(135deg, rgba(108, 99, 255, 0.07), rgba(108, 99, 255, 0.04)); border: 0.03125rem solid rgba(108, 99, 255, 0.18); border-radius: 0.625rem; max-width: 6.875rem; transition: all 0.2s ease; box-shadow: 0 0.03125rem 0.125rem rgba(108, 99, 255, 0.04); } .image-tag[data-v-5eb7b895]:active { transform: scale(0.96); border-color: rgba(108, 99, 255, 0.4); background: rgba(108, 99, 255, 0.1); } .tag-name[data-v-5eb7b895] { font-size: 0.6875rem; color: #5a52d5; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex: 1; font-weight: 500; } .tag-close[data-v-5eb7b895] { flex-shrink: 0; width: 1rem; height: 1rem; display: flex; align-items: center; justify-content: center; font-size: 0.875rem; color: #bbb; margin-left: 0.1875rem; border-radius: 50%; line-height: 1; transition: all 0.15s ease; } .tag-close[data-v-5eb7b895]:active { color: #fff; background: #ff4d4f; transform: scale(1.1); } /* 消息详情弹窗 */ .message-detail-card[data-v-5eb7b895] { width: 90%; max-height: 80vh; display: flex; flex-direction: column; border-radius: 1.25rem; } .message-detail-content[data-v-5eb7b895] { flex: 1; max-height: 60vh; overflow-y: auto; padding: 0.625rem 0; font-size: 0.875rem; line-height: 1.7; color: #333333; white-space: pre-wrap; word-break: break-all; }