/*
 * Copyright 2005-2018 the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

/* basic settings */
html,
body {
    height: 100%;
}
body {
    margin: 0;
    padding: 0;
    font-weight: normal;
    font-size: 11px;
    /* font-family: Tahoma, sans-serif; */
    font-family: PingFangSC, PingFangSC-Regular;
    line-height: 1;
    min-width: 500px;
    background-color: #fff;
    overflow: hidden;
}

/* body::-webkit-scrollbar { 
    width: 0 !important ;
} */

body.rtl {
    /*text-align: right;*/
    /*direction: rtl;*/
}
body.invitation {
    min-width: 0;
    min-height: 0;
}
a {
    text-decoration: underline;
    color: #008ad9;
}
a:hover {
    text-decoration: none;
}
img {
    vertical-align: bottom;
    border: 0 none;
}
.clear {
    clear: both;
    height: 0;
    font-size: 0;
    line-height: 0;
    display: block;
    visibility: hidden;
}

/* layout of chat */
#top {
    position: relative;
    padding: 5px 14px;
    background: #ffffff url("images/topbg.gif") scroll repeat-x 0 100%;
    _zoom: 1; /* IE6 fix */
}
#chat-header {
    position: relative;
    _zoom: 1; /* IE6 fix */
}
#chat {
  padding: 0 15px;
}

#send {
    padding: 0 15px 15px;
    background: #ffffff;

}
#footer {
    margin: 0 auto;
    padding-top: 5px;
    padding-bottom: 5px;
    text-align: center;
    color: #999999;
}
#footer a {
    color: #999999;
}

#chat-header .background-left {
 
    _zoom: 1; /* IE6 fix */
}
#chat-header .background-right {
    height: 42px;
  
}
#logo {
    font-weight: normal;
    font-size: 14px;
    font-family: Arial, sans-serif;
    color: #495151;
    /* padding: 5px 0; */
}
#logo a {
    float: left;
    text-decoration: none;
}
#logo img{
    max-width: 100px;
    max-height: 40px;
}
#page-title {
    float: right;
    margin-top: 10px;
    /* text-align: right; */
    color: #fff;
    /* opacity: .5; */
}

/* common controls */
#controls-region {
    padding-right: 15px;
    overflow: hidden;
}
.control {
    display: inline-block;
    margin: 15px 0 0 22px;
    cursor: pointer;
    float: right;
}
.tpl-image {
    width: 16px;
    height: 16px;
    background: transparent url("images/buttons.gif") scroll no-repeat 0 0;
}
.image-close-window {
	background-position: -128px -16px;
}
a:hover .image-close-window {
	background-position: -128px 0;
}
.close-control .tpl-image {
    background-position: -128px -16px;
}
.active-close-control .tpl-image {
    background-position: -128px 0;
}
.refresh-control .tpl-image {
    background-position: -80px -16px;
}

.refresh-control {
    display: none;
}

.active-refresh-control .tpl-image {
    background-position: -80px 0;
}
.secure-mode-control .tpl-image {
    background-position: -144px -16px;
}
.active-secure-mode-control .tpl-image {
    background-position: -144px 0;
}
.history-control .tpl-image {
    background-position: -112px -16px;
}
.active-history-control .tpl-image {
    background-position: -112px 0;
}
.sound-control .sound-control-on {
    background-position: -48px -16px;
}
.active-sound-control .sound-control-on {
    background-position: -48px 0;
}
.sound-control .sound-control-off {
    background-position: -64px -16px;
}
.active-sound-control .sound-control-off {
    background-position: -64px 0;
}
.send-mail-control .tpl-image {
    background-position: -32px -16px;
}
.active-send-mail-control .tpl-image {
    background-position: -32px 0;
}
.redirect-control .tpl-image {
    background-position: -96px -16px;
}
.active-redirect-control .tpl-image {
    background-position: -96px 0;
}
.user-name-control {
    font-size: 14px;
    cursor: auto;
    float: left;
    line-height: 22px;
    margin-top: 12px;
}
.user-name-control-set {
    display: inline-block;
    vertical-align: middle;
    background-position: 0 -16px;
}
.user-name-control-set:hover {
    background-position: 0 0;
}
.user-name-control-change {
    display: inline-block;
    vertical-align: middle;
    background-position: -16px -16px;
}
.user-name-control-change:hover {
    background-position: -16px 0;
}
.user-name-control-input-background {
    width: 95px;
    height: 16px;
    padding: 3px;
    background: #ffffff url("images/input_name.gif") scroll no-repeat 0 0;
    display: inline-block;
    _background-color: transparent;
}
#user-name-control-input {
    width: 95px;
    height: 16px;
    margin: 0;
    padding: 0;
    border: 0 none;
    font-weight: normal;
    font-size: 12px;
    font-family: Tahoma, sans-serif;
}
.user-name-control-prefix {
    padding-right: 5px;
}
.user-name-show {
    display: inline-block;
    max-width: 100px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: middle;
}

/* main chat region (#chat) */
/* #chat .background-left {
   
}
#chat .background-right {
    
}
#chat .background-shady-center {
  
}
#chat .background-shady-left {
  
} */
#chat .background-shady-right {
    position: relative;
    padding: 0 4px 10px;
    
    _zoom: 1; /* IE6 fix */
}
#status-region {
    position: absolute;
    bottom: 20px;
    left: 14px;
    font-size: 12px;
    color: #333333;
}
.status {
    float: left;
    padding-right: 10px;
}
#avatar-region {
  display: none;
    float: right;
    height: 200px;
    background: #eeeeee url("images/avatarbg.gif") scroll repeat-y 100% 0;
}
.avatar {
    width: 100px;
    height: 100px;
    margin: 10px 10px 0 10px;
    text-align: center;
    line-height: 0;
    font-size: 0;
    overflow: hidden;
}
.default-avatar {
    background: transparent url("images/avatar.jpg") scroll no-repeat 50% 10px;
    width: 100px;
    height: 100px;
}
.avatar img {
    max-width: 100px;
    border: none;
}
#messages-region {
    /* height: 200px; */
    height: 240px;
    min-height: 150px;
    overflow-y: auto;
    padding: 10px 0 0;
    font-weight: normal;
    font-size: 10px;
    font-family: Tahoma, sans-serif;
    line-height: 1.8em;
    color: #B9BAC0;
}

/* #messages-region::-webkit-scrollbar {
    width: 4px;
} */

#messages-region .message-info {
    font-size: 1.1em;
    color: #7baa0f;
}
#messages-region .message-hidden,
#messages-region .message-event,
#messages-region .message-connection {
    font-size: 1.1em;
    word-wrap: break-word;
}
#messages-region .name-agent {
    font-size: 1.1em;
    font-weight: bold;
    color: #000;
}
#messages-region .name-user {
    font-size: 1.1em;
    font-weight: bold;
    color: #da251d;
}
#messages-region .message-agent,
#messages-region .message-user {
    display: inline;
    word-break: break-all;
    font-size: 1.1em;
    color: #000;
    word-wrap:break-word;
    overflow: hidden;
    line-height: 1.8em;
}

.info-message.text-middle{
    text-align: center;
}

/* #messages-region .message-box-agent,
#messages-region .message-box-user {
    padding: 11px;
    border: 1px solid #D3D2D1;
    border-radius: 5px;
    max-width: 800px;
    width: auto;
    box-sizing: border-box;
    width: auto;
    display: inline-block !important;
    position: relative;
} */

/* #messages-region .message-box-agent .arrow,
#messages-region .message-box-user .arrow{
    position:absolute;
    top:5px;
    right:-16px;
    width:0;
    height:0;
    font-size:0;
    border:solid 8px;
    border-color:#D3D2D1 #D3D2D1 #D3D2D1 #fff;
} */

.message-box-user, .message-box-agent {
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

/* .message-box-user, .admin .message-box-agent{
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
} */

.message-box-agent, .admin .message-box-user {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
    
.arrow-info, .arrow-event, .arrow-connection, .arrow-hidden {
    text-align: center;
}

.arrow-user, .arrow-agent, .admin .arrow-agent {
    background-color: #ECFBFE; 
    padding: 11px 14px;
    /* border: 1px solid #D3D2D1; */
    border: none;
    border-radius: 10px;
    max-width: 350px;
    width: auto;
    box-sizing: border-box;
    width: auto;
    display: inline-block !important;
    position: relative;
}
.new_avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.1);
    overflow: hidden;
}
.name-c-user {
    text-align: right;
}
.name-c-agent {
    text-align: left;
}
.message-box-avatar-user {
    margin-left: 8px;
    margin-right: 20px;
}
.message-box-avatar-agent {
    margin-left: 5px;
    margin-right: 8px;
}

.message-c-box-user {
    display: flex; 
    flex-direction: row-reverse;
}
.message-c-box-agent {
    display: flex; 
    flex-direction: row;
}

.arrow-agent, .admin .arrow-user {
    background-color: #f6f8fa;
}

/* #messages-region .arrow-user:before,
#messages-region .arrow-user:after,
#messages-region .arrow-agent:before,
#messages-region .arrow-agent:after {
    border: solid transparent;
    content: ' ';
    height: 0;
    top: 100%;
    position: absolute;
    width: 0;
}

#message-box-agent.message-agent-side .arrow-agent:before,
#message-box-agent.message-agent-side .arrow-agent:after,
#message-box-user.message-user-side .arrow-user:before,
#message-box-user.message-user-side .arrow-user:after {
    right: 0;
}

#message-box-agent.message-agent-side .arrow-user:after,
#message-box-user.message-user-side .arrow-agent:after {
    border-width: 8px;
    border-top-color: #fff;
    left:6px;
    transform:skew( -30deg, 0);
}

#message-box-agent.message-agent-side .arrow-agent:after,
#message-box-user.message-user-side .arrow-user:after{
    border-width: 8px;
    border-top-color: #f3f3f3;
    right:6px;
    transform:skew( 30deg, 0);
}

#message-box-agent.message-agent-side .arrow-user:before, 
#message-box-user.message-user-side .arrow-agent:before {
    border-width: 10px;
    border-top-color: #d3d2d1;
    left: 4px;
    transform:skew( -30deg, 0);
}

#message-box-agent.message-agent-side .arrow-agent:before,
#message-box-user.message-user-side .arrow-user:before{
    border-width: 10px;
    border-top-color: #f3f3f3;
    right: 4px;
    transform:skew( 30deg, 0);
} */

.message-event-time, .message-info-time,  
.message-connection-time, .message-hidden-time,
.message-product-time {
    display: none;
}

.message-user-time, .message-agent-time{
    margin:3px;
}

#messages-region .message {
    margin-bottom: 15px;
}

#message{
  box-shadow: 0 -10px 10px rgba(0, 0, 0, .08);
}
/* message area (#message) */
/* #message .background-center {
    background: #ffffff url("images/message.png") scroll repeat-x 0 -95px;
}
#message .background-left {
    background: transparent url("images/message.png") scroll no-repeat 0 0;
} */
#message .background-right {
    height: 58px;
    padding: 14px 14px 14px;
    /* background: transparent url("images/message.png") scroll no-repeat 100% -190px; */
}
#message-input {
    overflow: auto;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    font-weight: normal;
    font-size: 12px;
    font-family: Tahoma, sans-serif;
    border: 0 none;
    background: transparent;
    resize: none; /* disable resize textarea in Google Chrome, Safari and Firefox 4 */
}
#message-input:focus{
  outline: none;
  
}
/* sending message area (#send) */
#post-message {
  display: flex;
  justify-content: flex-end;
}

#send-message, #submit-survey, .submit-button {
  display: inline-block;
  height: 32px;
  font-weight: normal;
  font-size: 17px;
  font-family: Arial, sans-serif;
  line-height: 30px;
  text-align: center;
  text-decoration: none;
  color: #fff;
  padding: 0 38px;
  color: #fff;
  font-size: 12px;
  color: #fff;
  background-color: var(--mainColor);
}
#send-message:hover, #submit-survey:hover, .submit-button:hover {
    background-color: var(--mainColorH);
    
}
#predefined-wrapper {
    float: left;
    padding: 5px 0 0 3px;
}
#predefined {
    width: 200px;
    height: 32px;
    background: #ffffff;
    border: 1px solid #d3d2d1;
    border-radius: 4px;
    padding: 5px 16px;
    box-sizing: border-box;
    margin-right: 5px;
    margin-top: -5px;
}

/* survey */
#message-survey {
    resize: none;
}

/* leavy message */
#message-leave {
    resize: none;
}

/* error page (error.tpl) */
#logo-wrapper {
    padding: 5px 14px;
    /* background: #ffffff url("images/logobg.gif") scroll repeat-x 0 100%; */
    _zoom: 1; /* IE6 fix */
    background-color: var(--mainColor);
    color: #fff;
    position: sticky;
    top: 0;
    z-index: 1000;
}
/* .headers-inwards-wrapper-common {
    background: #ffffff url("images/wndb.gif") scroll repeat-x 0 100%;
}
.headers-inwards-wrapper-left {
    background: transparent url("images/chatbgl.gif") scroll repeat-y 0 0;
}
.headers-inwards-wrapper-right {
    background: transparent url("images/chatbgr.gif") scroll repeat-y 100% 0;
}
.headers-inwards-wrapper-top {
    background: transparent url("images/wndt.gif") scroll repeat-x 0 0;
}
.headers-inwards-wrapper-top-left {
    background: transparent url("images/wndtl.gif") scroll no-repeat 0 0;
}
.headers-inwards-wrapper-top-right {
    background: transparent url("images/wndtr.gif") scroll no-repeat 100% 0;
}
.headers-inwards-wrapper-bottom-left {
    background: transparent url("images/wndbl.gif") scroll no-repeat 0 100%;
} */
.headers-inwards-wrapper-bottom-right {
    position: relative;
    /* background: transparent url("images/wndbr.gif") scroll no-repeat 100% 100%; */
}
.headers-inwards-wrapper-bottom-right .buttons {
    top: -24px;
    position: absolute;
    right: 5px;
}
#headers {
    margin-top: 30px;
    padding: 0 10px;
    /* background: #f1f2f2; */
}
#content-wrapper {
  padding: 0 56px;
    /* background: transparent url("images/content.gif") scroll repeat-x 0 -2px; */
}
#content-wrapper {
    font-weight: normal;
    font-size: 14px;
    font-family: Arial, sans-serif;
    display: flex;
    justify-content: center;
    /* margin-top: 10px; */
    position: relative;
}
.info-message {
    /* padding: 0 60px 0 0; */
    font-weight: normal;
    font-size: 14px;
    font-family: Arial, sans-serif;
    line-height: 18px;
    color: #333;
    text-align: left;
    width: 350px;
    margin:0 auto;
    /* display: flex; */
}

.fas, .far, .fab{
    font-size: 16px;
    color: var(--mainColorH);
}

.fa-smile{
    margin-right: 5px;
    margin-top: 2px;
}

.fa-comment-dots {
    margin-right: 5px;
    color: #fff;
}

/* redirection page (redirect.tpl) */
.left {
    float: left;
    width: 49%;
}
.right {
    float: right;
    width: 49%;
}
.center {
    padding-top: 30px;
    text-align: center;
}
ul {
    margin: 10px 0;
    padding: 0 0 0 10px;
    list-style: none outside none;
}
ul li {
    margin: 0 0 4px;
    padding: 0 0 0 10px;
    list-style: none outside none;
    background: transparent url("images/list.gif") scroll no-repeat 0 5px;
}

/* miscellanea */
.form {
    margin: 0;
    padding: 0;
    border: 0;
    border-collapse: collapse;
    vertical-align: top;
}
.form td {
    margin: 0;
    padding: 5px;
    border: 0;
    border-collapse: collapse;
    vertical-align: top;
}
#content-wrapper #send-message {
    float: left;
    margin-top: 10px;
}
#content-wrapper input,
#content-wrapper textarea,
#content-wrapper select,
#content-wrapper .text,
.headers-inwards-wrapper-bottom-right input {
    /* border: 1px solid #bbc4c4; */
    width: 350px;
    height: 42px;
    background: #ffffff;
    border: 1px solid #d3d2d1;
    border-radius: 4px;
    padding: 11px 16px;
    box-sizing: border-box;
}

#content-wrapper .text{
    border: none;
}

#content-wrapper textarea {
    height: 66px;
}

#content-wrapper input::-webkit-input-placeholder,
#content-wrapper textarea::-webkit-input-placeholder,
.headers-inwards-wrapper-bottom-right input::-webkit-input-placeholder{
    font-family: PingFangSC, PingFangSC-Regular;
    color: #9197a7;
}
#content-wrapper input::-webkit-input-placeholder,
#content-wrapper textarea::-webkit-input-placeholder,
.headers-inwards-wrapper-bottom-right input::-webkit-input-placeholder{   /* Mozilla Firefox 19+ */
    font-family: PingFangSC, PingFangSC-Regular;
    color: #9197a7;
}
#content-wrapper input::-webkit-input-placeholder,
#content-wrapper textarea::-webkit-input-placeholder,
.headers-inwards-wrapper-bottom-right input::-webkit-input-placeholder{    /* Mozilla Firefox 4 to 18 */
    font-family: PingFangSC, PingFangSC-Regular;
    color: #9197a7;
}
#content-wrapper input::-webkit-input-placeholder,
#content-wrapper textarea::-webkit-input-placeholder,
.headers-inwards-wrapper-bottom-right input::-webkit-input-placeholder{  /* Internet Explorer 10-11 */ 
    font-family: PingFangSC, PingFangSC-Regular;
    color: #9197a7;
}

#ajax-loader {
    display: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.middle-icon{
    text-align: center;
    margin-top: 128px;
    margin-bottom: 20px;
}

.middle-icon .fa-check-circle{
    font-size: 38px;
}

.buttons.middle-icon-buttons {
    top: -122px;
}
/* invitations */
#invitation-messages-region {
    height: 150px;
    min-height: 150px;
    overflow-y: auto;
    padding: 0;
    font-weight: normal;
    font-size: 10px;
    font-family: Tahoma, sans-serif;
    line-height: 1.8em;
    color: #999999;
    background-color: #ffffff;
}
#invitation-messages-region .message-info {
    font-size: 1.1em;
    color: #7baa0f;
    margin-left: 25px;
}
#invitation-messages-region .message-hidden,
#invitation-messages-region .message-event,
#messages-region .message-connection {
    font-size: 1.1em;
    margin-left: 25px;
}
#invitation-messages-region .name-agent {
    font-size: 1.1em;
    font-weight: bold;
    color: #000000;
}
#invitation-messages-region .name-user {
    font-size: 1.1em;
    font-weight: bold;
    color: #da251d;
}
#invitation-messages-region .message-agent,
#invitation-messages-region .message-user {
    font-size: 1.1em;
    color: #000000;
}

/* confirmation dialogue */
.info-message .visitor {
    color: blue;
}
.info-message .operator {
    color: green;
}
#confirm-pane {
    width: 100%;
}
#confirm-pane .button-wrapper {
    width: 400px;
    margin: 140px auto 0;
}
#confirm-pane .submit-button {
    float: none;
    display: inline-block;
}
.errors, .errors-name, .errors-email, .errors-message, .errors-captcha, .errors-phone{
    color:#ff0000;
}
/* responsive design for mobile devices */
@media only screen and (max-width: 500px) {
    body {
        min-width: auto;
    }
    #footer {
        max-width: 100%;
    }
    #message-leave {
        width: 100%;
    }
    .username {
        width: 100%;
    }
    #logo img {
        max-width: 100%;
    }
    #invitation-messages-region {
        max-width: 100%;
    }
}

/* additional tricks for desktops */
@media (min-width: 501px) {
    #footer {
        width: 400px;
    }
    #invitation-messages-region {
        width: 388px;
    }
}

[data-status="survey"] form[name="surveyForm"] , [data-status="survey"] #headers{
  visibility: hidden;
}
.mt20{
  margin-top: 20px;
}
/* .mb15{
  margin-bottom: 15px;
} */
.form-item{
  margin-bottom: 12px;
}
.form-item .w-label{
  font-size: 14px;
  line-height: 18px;
  margin-bottom: 4px;
  font-weight: 400;
  text-transform: uppercase;
}
.form-item .form-control{
  border: 1px solid #d3d2d1;
  height: 42px;
  padding: 11px 16px;
  line-height: 20px;
  box-sizing: border-box;
  width: 100%;
}
.form-item textarea.form-control{
  height: 90px;
}

.form-but{
  background-color: var(--mainColor);
}

#logo .province {
    color: #ccc;
    line-height: 38px;
}

#logo-left {
    display: inline-flex;
}

.company-name {
    color: #fff;
    line-height: 38px;
    margin-left: 3px;
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 130px;
}

.arrow-product {
    width: 320px;
    text-align: center;
    margin: 0 auto;
    padding: 15px;
    box-sizing: border-box;
    box-shadow: 0px 10px 30px 0px rgb(84 84 84 / 10%);
}

.message-box-product {
    display: block;
}

.message-box-product.product-hide {
    display: none;
}

.message-product, .message-user {
    display: flex;
    flex: 1;
    max-width: 290px;
    justify-content: space-between;
}
.message-product {
}
.message-product img {
     width: 50px;
}
.message-product img, .message-user img{
    object-fit: cover;
}

.arrow-product:hover {
    box-shadow: 0px 10px 30px 0px rgba(84,84,84,0.10); 
}
.message-product .j-btn {
    width: 62px;
    min-width: 62px;
    padding: 5px 0;
}

.chat_product-spec, .studio_pro-spec {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: 0 10px;
    max-width: 160px;
    text-align: left;
}

.chat_product-name, .chat_product-desc, .studio_pro-name, .studio_pro-desc {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.chat_product-price, .studio_pro-price {
    display: flex;
}

.chat_product-price p, .studio_pro-price p {
    margin-top: 0;
    width: 50%;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.chat_product-price p+p, .studio_pro-price p+p{
    padding-left: 10px;
}

.chat_product-btns {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: space-between;
}

.chat_product-btns i.fas.fa-times {
    cursor: pointer;
    color: #3F4D72;
}

.chat_product-btns button {
    cursor: pointer;
}

.red-request {
    color: red;
}
.vex.vex-theme-default .vex-dialog-button.vex-dialog-button-primary {
    background: var(--mainColor) !important;
}
.common_problem{
    font-size: 16px;
    display: flex;
    color: #008ad9;
    cursor: pointer;
    min-width: 200px !important;
    line-height: 48px;
    border-bottom: 1px solid #ededf1;
    align-items: center;
}
.common_problem_q{
    width: 18px;
    display: inline-block;
    height: 18px;
    font-size: 12px;
    background: #dde9ff;
    border-radius: 50%;
    margin-right: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
.tips {
    font-size: 12px;
    color: red;
    text-align: left;
    display: none;
    margin-top: 5px;
    margin-left: 35px;

  }
  .button_form_btn{
    width: 230px;
    height: 30px;
    background-color: var(--mainColor);
    color: #fff;
    border: none;
    border-radius: 4px;
    cursor: pointer;
  }
  .lz-form-container {
    width: 100%;
    max-width: 240px;
}

.lz-form-card {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(10px);
    border-radius: 6px;
    box-shadow: 0 8px 12px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    padding: 16px 12px;
    position: relative;
    overflow: hidden;
}

/* 科技感装饰元素 */
.lz-form-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, var(--mainColor), var(--mainColorH));
}

.lz-form-card::after {
    content: "";
    position: absolute;
    bottom: -25px;
    right: -25px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--mainColorH) 0%, var(--mainColor) 100%);
    opacity: 0.1;
    z-index: 0;
}

.lz-form-header {
    text-align: center;
    margin-bottom: 16px;
    position: relative;
}

.lz-form-title {
    font-size: 15px;
    font-weight: 600;
    color: #2d3748;
    margin-bottom: 3px;
    letter-spacing: 0.3px;
}

.lz-form-subtitle {
    font-size: 11px;
    color: #718096;
    font-weight: 400;
}

.lz-form-group {
    margin-bottom: 14px;
    position: relative;
    z-index: 1;
}

.lz-form-label {
    display: block;
    margin-bottom: 5px;
    font-weight: 500;
    color: #4a5568;
    font-size: 12px;
    transition: all 0.3s ease;
}

.lz-required::after {
    content: "*";
    color: #e53e3e;
    margin-left: 3px;
}

.lz-form-input {
    width: 90%;
    height: 34px;
    padding: 0 10px;
    border-radius: 5px;
    border: 1px solid #e2e8f0;
    background-color: #fff;
    transition: all 0.3s ease;
    font-size: 12px;
    color: #2d3748;
}

.lz-form-input:hover {
    border-color: #cbd5e0;
}

.lz-form-input:focus {
    border-color: #3a7bd5;
    box-shadow: 0 0 0 2px rgba(66, 153, 225, 0.15);
    outline: none;
}

.lz-error-message {
    font-size: 10px;
    color: #e53e3e;
    margin-top: 3px;
    display: none;
    animation: lz-fadeIn 0.3s ease;
}

.lz-submit-button {
    width: 100%;
    height: 34px;
    font-size: 13px;
    line-height: 34px;
    text-align: center;
    font-weight: 500;
    border-radius: 5px;
    background: linear-gradient(90deg, var(--mainColor), var(--mainColorH));
    border: none;
    color: white;
    cursor: pointer;
    transition: all 0.3s ease;
    letter-spacing: 0.3px;
    position: relative;
    overflow: hidden;
}

.lz-submit-button::after {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: all 0.6s ease;
}

.lz-submit-button:hover::after {
    left: 100%;
}

.lz-submit-button:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(50, 50, 93, 0.1), 0 2px 4px rgba(0, 0, 0, 0.08);
}

.lz-submit-button:active {
    transform: translateY(0);
}

.lz-submit-button:disabled {
    background: linear-gradient(90deg, #a0aec0, #cbd5e0);
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.lz-loading {
    position: relative;
    color: transparent;
}

.lz-loading::after {
    content: "";
    position: absolute;
    width: 14px;
    height: 14px;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: #ffffff;
    border-radius: 50%;
    animation: lz-spin 1s ease infinite;
}

.lz-success-message {
    position: fixed;
    top: 20px;
    left: 50%;
    transform: translateX(-50%) translateY(-100px);
    padding: 8px 14px;
    border-radius: 5px;
    background-color: #38b2ac;
    color: white;
    box-shadow: 0 8px 12px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    transition: all 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55);
    opacity: 0;
    z-index: 1000;
    font-size: 12px;
}

.lz-success-message.lz-show {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
}

@keyframes lz-spin {
    to { transform: rotate(360deg); }
}

@keyframes lz-fadeIn {
    from { opacity: 0; transform: translateY(-5px); }
    to { opacity: 1; transform: translateY(0); }
}