:root {
  --header-height: 9vh;
  --global-color:#3772FF ;
  --line-height:42.39px;
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
color: #000;
}
::placeholder {
  color: #B8C2CC;
  opacity: 1; /* Firefox reduces opacity by default */
}
a {
text-decoration: none;
}
button { 
border:none;
outline: none;
}
ul,li {
list-style: none;
}
img {
display: block;
max-width: 100%;
}
.flex {
  display: flex;
}
.ellipsis {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
@font-face {
  font-family:font_title;font-style: normal;font-display: swap;
  src: url('/static/index/font/fontzipMin.ttf') format('truetype');
}
@font-face {
  font-family:font_sologan1;font-style: normal;font-display: swap;
  src: url('/static/index/font/sologan.ttf') format('truetype');
}
@font-face {
font-family: 'iconfont';
src: url('/static/index/font/iconfont.ttf?t=1754457612829') format('truetype');
}
@font-face {
font-family: 'commontools';font-style: normal;font-display: swap;
src: url('/static/index/font/commontools.ttf?t=1754457612829') format('truetype');
}
@font-face {
font-family: 'left-title';font-style: normal;font-display: swap;
src: url('/static/index/font/left-title.ttf?t=1754457612829') format('truetype');
}
@font-face {
font-family: 'subtitle';font-style: normal;font-display: swap;
src: url('/static/index/font/subtitle.ttf?t=1754457612829') format('truetype');
}
@font-face {
font-family: 'nav-title';font-style: normal;font-display: swap;
src: url('/static/index/font/nav-title.ttf?t=1754457612829') format('truetype')
}
@font-face {
font-family: 'input-text';font-style: normal;font-display: swap;
src: url('/static/index/font/input-text.ttf?t=1754457612829') format('truetype')
}
@font-face {
font-family: 'panel-title';font-style: normal;font-display: swap;
src: url('/static/index/font/panel-title.ttf?t=1754457612829') format('truetype')
}
@font-face {
font-family: 'service-title';font-style: normal;font-display: swap;
src: url('/static/index/font/service-title.ttf?t=1754457612829') format('truetype')
}
@font-face {
font-family: 'register';font-style: normal;font-display: swap;
src: url('/static/index/font/register.ttf?t=1754457612829') format('truetype')
}
@font-face {
  font-family: 'login-title';font-style: normal;font-display: swap;
  src: url('/static/index/font/login-title.ttf?t=1754457612829') format('truetype')
  }
  @font-face {
    font-family: 'service-content';font-style: normal;font-display: swap;
    src: url('/static/index/font/service-content.ttf?t=1754457612829') format('truetype')
    }
html, body {
height: 100%; /* 确保html和body占满视口高度 */
line-height: 1.6;
font-size: 16px;
background-color: #fff;
/* font-family: Arial, Helvetica, sans-serif; */
/* font-family:  Arial, Helvetica, sans-serif, "Microsoft YaHei";  */
overflow: hidden;
}

body {
display: flex;
padding:0 40px 0 30px;
background: linear-gradient(to right,#F5F7FA 0%,#fff 15%);
}
::-webkit-scrollbar {
  display: none; /* Chrome, Safari, Opera */
}
.b {border:1px solid red;}
.red {
  color: #EE3D32;
}
.iconfont {
font-family: "iconfont" !important;
font-size: 16px;
font-style: normal;
}
/* 左侧侧边栏 */
.sidebar {
width: calc(16.1% + 70px * .161);
background-color: #F5F7FA;
display: flex;
flex-direction: column;
height: 100%; /* 侧边栏高度占满 */
padding:0 14px;
flex-shrink: 1;
}
.sidebar-title {
white-space:nowrap; 
overflow:hidden; 
text-overflow:ellipsis;
font-weight: 500;
font-size:18px;
font-family:font_title;
}
.sidebar-header {
display: flex;
align-items: center;
padding-left:20px;
height: var(--header-height); /* 头部高度占满 */
overflow: hidden;
flex-shrink: 0;
}

.sidebar-header img {
width: 40px;
height: 40px;
margin-right: 11px;
border-radius: 50%;
}
.sidebar-new {
  display: flex; 
  /*justify-content: center;*/
  
  align-items: center;
  width: 100%;
  background-color: #fff;
  border-radius: 5px;
  padding:4px;
  margin:8px auto;
  padding:10px 0;
}
.sidebar-new img {
  width: 18px;
  height: 18px;
  margin-right:8px;
  margin-left:20px;
}
.nav-title {
font-size: 16px;
color: #000 ;
font-weight:600;
padding: 0 20px ;
text-transform: uppercase;
white-space: nowrap;
overflow: hidden;
font-family: 'nav-title';
}
.nav-list {
  display: flex; 
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0 10px;
  overflow: hidden;
}
.nav-list div{
  display: flex;
  width: 48%;
}
.sidebar-nav {
/*margin-top: 20px;*/
flex-shrink: 1;
}
.nav-icon {
    width: 18px;
    height: 18px;
    margin-right: 10px;
    white-space: nowrap;
}

.nav-list div a {
display: block;
padding: 10px;
text-decoration: none;
transition: background-color 0.2s;
display: flex;
align-items: center;
font-family: commontools;
white-space: nowrap;
font-size:14px;
}

.sidebar-nav li a:last-child {
padding-bottom:10px;
}

.sidebar-recent {
flex: 1;
overflow: hidden;
}
.sidebar-recent div {
display: block;
padding: 0px 12px 18px;
text-decoration: none;
font-size: 14px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
letter-spacing: .2px;
}

/* 中间聊天主区域 */
.main {
flex: 1;
display: flex;
flex-direction: column;
height: 100%; /* 主区域高度占满  #F2F7FF 5%, #DEE9FE 10%,*/
background-image: url('/static/index/img/bg1.png');
background-repeat:no-repeat;
background-position:70% top;
flex-shrink: 1;
/* background-image: linear-gradient(185deg,#F2F7FF 5%, #DEE9FE 10%, #fff 100%); */
/*background-image: linear-gradient(200deg, #a6c0fe 0%, #9face6 19%, #f5f7fa 42%, #e7f0fd 59%, #fff 80%);*/
}

.main-header {
/* background-color: rgba(255,255,255,0); */
height: var(--header-height); /* 头部高度占满 */
display: flex;
justify-content: space-between;
align-items: flex-end;
padding-left:50px;
padding-top:14px;
overflow: hidden;
flex-shrink: 0;
}

.main-sologan1 {
font-family:font_sologan1;
font-size: 22px;
}
.main-sologan2 {
font-size: 14px;
color:#8A9199;
font-family: 'subtitle';
}
.main-sologan3 {
font-family:font_sologan1;
font-size: 28px;
}
.init-container {
display: flex;
flex-direction: column;
flex:1;
}
.chat_content {
/* margin-top:calc(16vh + 30px); */
margin-left:auto;
margin-right:auto;
display: flex; 
width: 47.9vw;
/* padding:0 10px; */
flex: 1;
  align-items: flex-end;
}
.init-input {
width: 47.9vw;
height: clamp(170px, 51vh, 688px);
border-radius: 16px;
border: 1px solid #DFE4EB;
margin:30px auto;
padding:20px;
display: flex;
flex-direction: column;
justify-content: flex-end;
}
.ai_content {
width: 52.6vw;
margin:0 auto;
/* flex:1; */
flex-direction: column;
line-height: 24px;
/* height: clamp(170px, 61.3vh, 488px);  */
height: calc(100vh - 170px - var(--header-height) - 60px - var(--line-height)); 
overflow-y: scroll; 
scrollbar-width: none; /* Firefox */
padding:8px 0;
}

.init-textarea{
display: flex;
flex: 1;
margin:0 auto;
width: 100%;
font-size:16px;
border:none;
outline:none;
resize: none;
background-color: #fff;
font-family: 'input-text';
}
.input-tools {
width: 100%;
display: flex;
margin:0 auto;
padding-top:20px;
}
.tools-item {
display: flex;
align-items: center;
justify-content: center;
border-radius: 5px;
margin-right: 10px;
width: 110px;
height: 38px;
background-color: #F5F7FA;
cursor: pointer;
font-size: 14px;
color: #5C6166;
line-height: 38px;
font-family: 'service-content';
}
.tools-item i {
margin-right: 5px;
color:#5C6166;
}
.tools-item-action {
color:#fff;
background-color:  var(--global-color);
}
.tools-item-action i { 
color:#fff;
} 
.tools-item-right {
flex: 1;
justify-content: flex-end;
align-items: center;
display: flex;
}
.chat-container {
flex: 1; /* 聊天容器占据剩余空间 */
padding: 20px;
overflow-y: auto;
width: 52.6vw;
margin:0 auto;
}
.file_upload_process{
visibility: hidden;
width: 60%;
overflow: hidden;
white-space: nowrap;
display:flex;
justify-content: flex-end;
padding-right: 10px;

}
/* 右侧产品&资讯栏 */
.right-panel {
width: calc(18.25% + 70px * .1825);
background-color: #fff;
display: flex;
flex-direction: column;
padding: 0 20px 0 0;
height: 100%; /* 右侧面板高度占满 */
flex-shrink: 1;
}
.right-login {
display: flex;
background: linear-gradient(90deg, #3772FF 0%, #6895FF 100%);
border-radius: 5px;
cursor:pointer;   
align-items: center;
justify-content: center;
color:#fff;
font-family: 'register';
height:38px;
margin-top:4px;
}
.right-login div { 
color: #fff;
font-size:14px;
padding: 5px 10px;
}
.right-login span {
width: 1px;
background-color: #fff;
height:13px;
}

.user_info_trigger {
height: 100%;
display: flex;
align-items: center;
justify-content: end;
padding: 0 10px;
}

.user_info_trigger:hover + .user_info_content,
.user_info_content:hover {
display: block;

}
.user_info_content {
display: none;
position: absolute;
top: calc(50% + 33px);
right: 0px;
border-radius: 5px;
padding:10px;
box-shadow: 0 2px 5px rgba(0,0,0,0.1);
z-index:1000;
background-color: #fff;
width: 150px;
}
.user_info_content ul li {
padding:5px;
cursor: pointer;
}
.user_info_content ul li:hover {
background-color: var(--global-color);
color: #fff;
}

.panel-block { 
border: 1px solid #DFE4EB;
border-radius: 16px;
padding:16px;
margin-bottom:20px;
overflow: hidden;
/* flex-shrink: 0; */
}
.panel-block:first { 
margin-top:8px;
}
.panel-header { 
display: flex;
height: var(--header-height); /* 头部高度占满 */
justify-content: flex-end;
flex-shrink: 0;
position: relative;
}
.panel-register { 
font-family: 'register';
}
.panel-title {
margin-bottom: 10px;
display: flex;
justify-content: space-between ;
}
.panel-title span { 
display: flex;
align-items: center;
font-weight: 600;
white-space: nowrap;
font-family: 'panel-title';
}
.panel-more { 
font-size:14px;
color: #0049f9;
white-space: nowrap;
overflow: hidden;
letter-spacing: .2px;
}
.panel-service-item {
  color:#5C6166;
  white-space: nowrap ;
  font-size:14px;
  font-family: 'service-content';
  padding-left:20px;
  cursor:pointer;
}

.product-list li {
background: #F5F7FA;
border-radius: 5px;
margin-bottom:10px;
padding:10px 20px;
/* font-family: 'service-content'; */
cursor:pointer;
}
.product-list li:last-child {
margin-bottom: 0px;
}
.news-item {
  padding:10px 0;
}
.news-item:first-child {
padding-top:0px;
}
.news-item:last-child {
padding-bottom:0px;
}
.news-item a {
  display: flex;
  width: 100%;
}
.product-list li a,
.news-item a {
font-size: 14px;
display: flex;
justify-content: space-between;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.product-list li a  {
color:var(--global-color);
letter-spacing: .2px;
}

.news-item a div{
width: 80%;
align-items: center;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
letter-spacing: .2px;
padding-left:7px;
} 

.news-item a div::before {
content: "";
display: inline-block;
width: 6px;
height: 6px;
background-color: #B8C2CC; /* 圆点颜色 */
border-radius: 50%; /* 使其变成圆形 */
margin-right: 8px; /* 圆点和文字之间的间距 */
vertical-align: middle; /* 垂直对齐 */
align-items: center;
}

.customer-service {
display: flex; 
justify-content: center;
align-items: center;
border-radius: 10px;
margin-top:7px;
/* flex-shrink: 0; */
padding: 8px ;
background-color: #edf1fa;
width: 100%;
cursor: pointer;
/*transition: background-color 0.2s;*/
}
.service-title {
color:var(--global-color);
white-space: nowrap;
overflow: hidden;
font-family: 'service-title';
}
.footer {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  color: #999;
}
.footer div {
  color: #999;
  margin: 10px;
}
.footer a { 
color:#999;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.footer a:hover {
color: var(--global-color)
}
.mask {
  position: absolute;
  width: 100%;
  top: 0px;
  height: 100%;
  overflow: hidden;
  text-align: center;
  background: rgba(0,0,0,0.5);
  display: none;
  z-index: 100;
}
.login-block {
  display: flex;
  background-color:#fff;
  height: 540px;
  width: 814px;
  position: relative;
  top:50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 20px;
  margin-top:-5px;
}
.login-block-close {
    position:absolute;
    top:10px;
    right:10px;
    cursor:pointer;
}
.login-title {
  font-weight: 500;
  font-size: 24px;
  color: #171819;
  font-family: 'login-title';
}
.login-subtitle {
  color: #8A9199;
  font-size:14px;
  margin-bottom:22px;
  padding:5px;
  font-family: 'subtitle';
}
.login-input {
  height: 50px;
  background: #FFFFFF;
  border-radius: 14px;
  border: 2px solid #DAE0E6;
  display: flex;
  align-items: center;
  flex:1;
}
.login-input input {
  width: 100%;
  height: 100%;
  background: transparent;
  border: none;
  outline: none;
  font-size:16px;
}
.login-verify-button {
  width: 140px;
  height: 50px;
  background: #FFFFFF;
  border-radius: 14px;
  border: 2px solid var(--global-color);
  color: var(--global-color);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.login-button {
  height: 50px;
  width: 100%;
  background: var(--global-color);
  border-radius: 14px;
  color: #fff;
  border:none;
  font-size:16px;
}
.label_title {
  width: 20.5%;
  white-space: nowrap;
  display: flex;
  align-items: center;
}
.custom-toast {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  background: rgba(0, 0, 0, 0.8);
  color: white;
  padding: 12px 24px;
  border-radius: 6px;
  font-size: 14px;
  z-index: 9999;
  transition: opacity 0.3s ease-in-out;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  max-width: 80%;
  word-wrap: break-word;
  display: none;
  letter-spacing: 1px;
  text-indent:1px;
}

.message {
  display: flex;
  margin-bottom: 20px;
  position: relative;
}

.message_right {
  justify-content: flex-end;
}
.message_center {
  justify-content: center;
}

.message_content {
  width: calc(100% - 46px);
  display: flex;
}
.message_right .message_content {
  /* width: auto; */
  max-width: calc(100% - 46px);
  justify-content: flex-end;
}

.message_right .message_content>div:last-child {
  width: 36px!important;
  height: 36px!important;
}
.message_time {
  color:#8A9199;
  padding-bottom:5px;
  font-size:14px;
}
.message_time_right {
  color:#8A9199;
  padding-bottom:5px;
  display: flex;
  justify-content: flex-end;
  padding-right:2px;
  font-size:14px;
}
.message_text {
  width: 100%;
  word-wrap: break-word;
  line-height: 1.5;
  display: flex;
  flex-direction: column;
}
.message_right .message_text div:last-child {
color:#fff;
display: flex;
justify-content: flex-end;
}
.message_text img {
  width: 100%!important;
}
.message_text:only-child {
  border-radius: 10px;
  background: #DEECFF;
  padding: 12px 16px;
  color: #333;
  text-align: justify;
}
.message_text div:last-child {
  border-radius: 5px;
  background: #7096f1;
  padding: 12px;
  text-align: justify;
}
.message_text div:last-child:empty {
  display: none;
}
.message_avatar {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  margin-right: 10px;
  background-image: url('/static/index/img/header.gif');
  background-size: cover;
  background-position: center;
}
.question_avatar {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  margin-right: 10px;
  background-image: url('/static/index/img/zaojiawanshitong.png');
  background-size: cover;
  background-position: center;
}
.user_avatar {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  margin-left: 10px;
  background-image: url('/static/index/img/avatar.png');
  background-size: cover;
  background-position: center;
}

.mask_content{ 
  width: 30%;
  background-color: #fff;
  border-radius: 20px;
  text-align: center;
  margin: 0 auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -60%);
  overflow: hidden;
}
.mask_title {
  position: relative;
  font-weight: bold;
  padding: 10px;
  background-color: var(--global-color);
  color:#fff;
  font-size: 20px;
  letter-spacing: 5px;
  text-indent:5px;
}
.mask_body {
  padding:20px;
  line-height: 1.6;
  text-align: justify;
  text-justify: inter-word; /* 或 inter-character, distribute */
}
.mask_footer {
  padding: 20px;
  display: flex;
  justify-content: center;
}
.login_block {
margin-top:-15px;
}
.curr_avatar { 
  background-color: var(--global-color);
  width: 30px;height:30px;
  color: #fff;
  font-size:17px;
  font-weight:bolder;
  border-radius: 50%;
  flex-shrink: 0;
  text-align:center;
}
.nowrap{
  white-space:nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.suggest {
  padding:10px 0;
  border:1px solid #e6e6e6;
  background-color: #fff;
  position: absolute;
  border-radius: 10px;
  position: fixed;
  top:0px;
  right: 0px;
  width: 40%;
  background-color: #fff;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  display: none;
}
.suggest div {
  padding:5px 10px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  border-bottom: 1px solid #e6e6e6;
}
.suggest div:last-child { border-bottom: none; }
.suggest div:hover {
  cursor: pointer;
  background-color: #f5f5f5;

}
.sidebar-service {
  padding:0 20px 0 15px;
  overflow: hidden;
}
.sidebar-service div {
  padding:10px 0;
  font-size:14px;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sidebar-service div:last-child {
  padding-bottom: 0px;
}

.tail_message {
  padding:5px 20px; 
  margin-top:10px; 
  border-top:1px solid #ccc;
  display:flex;
  justify-content:center;
  font-size:14px;
  color:#0049f9;
}