/* ============================================================
   农场大厅主题 · 毛玻璃  farm-theme.css
   在 common.css 之后引入：
   <link rel="stylesheet" href="/static/css/farm-theme.css?v=1" />
   ============================================================ */

:root {
  --farm-wood-dark:  #6B4423;
  --farm-wood:       #8B5A2B;
  --farm-wood-light: #C68642;
  --farm-cream:      #FDF6E3;
  --farm-paper:      rgba(255, 250, 236, 0.55);
  --farm-glass:      rgba(255, 252, 242, 0.34);
  --farm-glass-strong: rgba(255, 252, 242, 0.52);
  --farm-border:     rgba(139, 90, 43, 0.18);
  --farm-gold:       #E8A33D;
  --farm-green:      #55A630;
  --farm-green-deep: #43913F;
  --farm-text:       #4A2F17;
  --farm-text-soft:  #8A6B4D;
  --farm-font: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", Arial, sans-serif;
}

/* ---------- 全局背景：田园渐变，供毛玻璃透出 ---------- */
body, .visitorBody, html {
  background:
    radial-gradient(900px 500px at 85% -10%, rgba(255, 214, 120, 0.55), transparent 60%),
    radial-gradient(700px 480px at -10% 20%, rgba(168, 214, 120, 0.5), transparent 60%),
    radial-gradient(800px 600px at 50% 115%, rgba(240, 180, 90, 0.45), transparent 65%),
    linear-gradient(180deg, #BFE0F0 0%, #DCEBC0 42%, #F2E2AE 100%) !important;
  background-attachment: fixed !important;
  color: var(--farm-text);
}

a { color: var(--farm-green-deep); }
a:hover { color: var(--farm-green); }

html, body, button, input, textarea, select, .el-button, .el-input__inner, .el-textarea__inner, .el-dialog__title {
  font-family: var(--farm-font) !important;
}
.loginTitle, .chatEntTitle, .el-dialog__title, .deployment-guide h2, .form-title {
  font-weight: 700 !important;
  letter-spacing: 1px;
}
.loginTitle {
  font-size: 24px !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.7), 0 3px 8px rgba(107,68,35,.16);
}
.mainLeftMenu span, .el-button {
  font-weight: 600;
}

/* ---------- 访客端：整卡 ---------- */
.chatCenter {
  background: var(--farm-glass) !important;
  border: 2px solid #E8B04B !important;
  -webkit-backdrop-filter: blur(28px) saturate(1.65);
  backdrop-filter: blur(28px) saturate(1.65);
  box-shadow: 0 20px 50px rgba(107, 68, 35, 0.28), inset 0 1px 0 rgba(255,255,255,0.7) !important;
}
@media screen and (min-width: 900px) {
  .chatCenter { border-radius: 22px !important; }
}

/* 顶栏：木纹渐变 */
.chatEntTitle {
  background-image: none !important;
  background: linear-gradient(180deg, rgba(181,118,58,0.78) 0%, rgba(139,84,35,0.85) 100%) !important;
  -webkit-backdrop-filter: blur(16px) saturate(1.4);
  backdrop-filter: blur(16px) saturate(1.4);
  border-bottom: 3px solid #6B4423;
  box-shadow: inset 0 1px 0 rgba(255, 220, 160, 0.55);
  color: #FFF6E0 !important;
  font-weight: bold;
  letter-spacing: 2px;
  text-shadow: 0 1px 2px rgba(80, 45, 10, 0.45);
}

/* 聊天区域透明化，透出毛玻璃 */
.chatContext, .chatBox { background: transparent !important; }
.chatEntBox { border-right: 1px solid var(--farm-border) !important; }

/* 气泡：客服=玻璃白纸，访客=农场绿 */
.chatContent {
  background: var(--farm-glass-strong) !important;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  border: 1px solid rgba(255, 255, 255, 0.8) !important;
  color: var(--farm-text) !important;
  box-shadow: 0 3px 10px rgba(107, 68, 35, 0.10);
}
.chatContent2 { border-radius: 14px 14px 14px 4px !important; }
.chatBoxMe .chatContent2 {
  background: linear-gradient(160deg, #FFC24A 0%, #F08C1E 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.35) !important;
  color: #fff !important;
  border-radius: 14px 14px 4px 14px !important;
  box-shadow: 0 4px 12px rgba(217, 122, 24, 0.4);
}
.chatBoxMe .chatContent2 a { color: #FFF3C4; }

/* 时间戳 / 提示条 */
.chatTime span {
  background: rgba(107, 68, 35, 0.16) !important;
  color: #7A5A3A !important;
  border-radius: 10px;
  padding: 2px 10px !important;
  font-size: 12px;
}
.chatNoticeContent {
  background: var(--farm-glass-strong) !important;
  color: var(--farm-text-soft) !important;
  border: 1px solid rgba(255,255,255,0.7);
}

/* 输入区 */
.chatBoxSend {
  background: var(--farm-glass-strong) !important;
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border-top: 1px solid rgba(255, 255, 255, 0.7) !important;
}
.visitorEditorArea textarea, .chatArea .el-textarea__inner {
  background: transparent !important;
  color: var(--farm-text) !important;
}
.visitorEditorArea textarea::placeholder { color: var(--farm-text-soft); }
.visitorIconBox, .iconBtnsBox { color: var(--farm-wood) !important; }
.visitorIconBox .iconBtn:hover, .iconBtnsBox .iconBtn:hover { color: var(--farm-green-deep); }

/* 右侧公告栏 */
.chatArticle {
  background: rgba(255, 248, 228, 0.5);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}
.hotQuestionTitle {
  color: var(--farm-wood-dark);
  font-weight: bold;
  border-bottom: 1px solid var(--farm-border) !important;
}
.allNotice { color: #6E5236 !important; padding: 0 10px; }

/* 表情面板 */
.faceBox {
  background: var(--farm-glass-strong) !important;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  border: 1px solid rgba(255,255,255,0.7);
  border-radius: 10px;
}
.faceBoxList li { border-color: rgba(139,90,43,0.12) !important; }

/* ---------- Element-UI 主色 → 农场绿 / 金 ---------- */
.el-button--primary {
  background: linear-gradient(180deg, #FFC24A 0%, #F08C1E 100%) !important;
  border-color: #D97A18 !important;
  border-radius: 10px !important;
  font-weight: bold;
  text-shadow: 0 1px 1px rgba(160, 80, 10, 0.45);
  box-shadow: 0 3px 8px rgba(217, 122, 24, 0.4), inset 0 1px 0 rgba(255,255,255,0.4);
}
.el-button--primary:hover, .el-button--primary:focus {
  background: linear-gradient(180deg, #FFCE5F 0%, #F59A2E 100%) !important;
  border-color: #E8891F !important;
}
.el-button--primary.is-disabled, .el-button--primary.is-disabled:hover {
  background: #F2D8AC !important; border-color: #F2D8AC !important;
  text-shadow: none; box-shadow: none;
}
.el-tabs__item { color: var(--farm-text-soft) !important; }
.el-tabs__item.is-active { color: var(--farm-green-deep) !important; font-weight: bold; }
.el-tabs__active-bar { background-color: var(--farm-green) !important; }
.el-menu--horizontal > .el-menu-item.is-active { border-bottom-color: var(--farm-green) !important; }
.el-input__inner:focus, .el-textarea__inner:focus { border-color: var(--farm-green) !important; }
.el-avatar { border: 2px solid var(--farm-gold); background: #FFF3D6; box-sizing: border-box; }

/* ---------- 客服工作台 ---------- */
.mainLeftMenu {
  background: linear-gradient(180deg, rgba(122,75,34,0.82) 0%, rgba(94,56,24,0.88) 100%) !important;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  border-right: 1px solid rgba(255, 220, 160, 0.25);
}
.menuLeftItem { color: #F3DFBB !important; }
.menuLeftItem:active, .menuLeftItem.active {
  background: linear-gradient(180deg, #E8A33D 0%, #D18A23 100%) !important;
  color: #4A2F17 !important;
  font-weight: bold;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.45);
}
.chatBg, .chatRight, .el-aside {
  background: var(--farm-glass) !important;
  -webkit-backdrop-filter: blur(26px) saturate(1.6);
  backdrop-filter: blur(26px) saturate(1.6);
  border: 2px solid #E8B04B !important;
}
.kefuMainBg { background: transparent !important; border-right: 1px solid var(--farm-border) !important; }
.onlineUsers { border-bottom: 1px solid rgba(139,90,43,0.10) !important; border-left: 4px solid transparent !important; }
.onlineUsers a { color: var(--farm-text); }
.onlineUsers:hover, .onlineUsers.cur {
  background: rgba(232, 163, 61, 0.18) !important;
  border-left: 4px solid var(--farm-gold) !important;
}
.kefuFuncBox, .kefuFuncBtns {
  background: var(--farm-glass-strong) !important;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  border-color: rgba(255,255,255,0.6) !important;
}
.chatRightTitle { color: var(--farm-wood-dark) !important; border-bottom-color: var(--farm-border) !important; }
.chatRightTitle a { color: var(--farm-green-deep) !important; }
.replyBox { background: transparent !important; }
.replyItem:hover { background: rgba(111, 190, 74, 0.15) !important; color: var(--farm-green-deep) !important; }
.lastNewMsg { color: var(--farm-text-soft) !important; }

/* 面板统计卡 */
.tongji .tongjiItem {
  background: var(--farm-glass-strong) !important;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  border: 2px solid #E8B04B;
  border-radius: 14px !important;
  box-shadow: 0 8px 20px rgba(107, 68, 35, 0.12);
}
.tongji .tongjiHeader { color: var(--farm-wood-dark) !important; border-bottom-color: var(--farm-border) !important; }
.tongji .tongjiBody { color: var(--farm-text) !important; border-bottom-color: var(--farm-border) !important; }
.smallBox { border-radius: 14px !important; }
.bgInfo    { background: linear-gradient(160deg, #6FBE4A, #4CA23C) !important; }
.bgSuccess { background: linear-gradient(160deg, #F0B14E, #D18A23) !important; }
.bgDanger  { background: linear-gradient(160deg, #B5763A, #8B5423) !important; }

/* ---------- 登录页 ---------- */
.signin {
  background: var(--farm-glass-strong) !important;
  -webkit-backdrop-filter: blur(28px) saturate(1.65);
  backdrop-filter: blur(28px) saturate(1.65);
  border: 2px solid #E8B04B !important;
  border-radius: 20px !important;
  box-shadow: 0 20px 50px rgba(107, 68, 35, 0.25) !important;
  padding: 30px !important;
}
.signin h1, .signin h2 { color: var(--farm-wood-dark) !important; }
.signin .copyright { color: var(--farm-text-soft) !important; }
.signin .el-input__inner {
  background: rgba(255, 255, 255, 0.6) !important;
  border: 1px solid rgba(139, 90, 43, 0.25) !important;
  border-radius: 10px !important;
  color: var(--farm-text) !important;
}

/* ---------- 滚动条 ---------- */
::-webkit-scrollbar { background: transparent !important; }
::-webkit-scrollbar-thumb { background: rgba(139, 90, 43, 0.35) !important; border-radius: 6px; }
::-webkit-scrollbar-thumb:hover { background: rgba(139, 90, 43, 0.55) !important; }


/* ---------- 输入区优化 & 工具栏图标规范化 ---------- */
.chatBoxSend, .kefuFuncBox {
  background: rgba(255, 249, 227, 0.92) !important;
}
.chatBoxSend { padding: 8px 8px 0 !important; }
.visitorIconBox .iconBtn, .iconBtnsBox .iconBtn {
  font-size: 22px !important;
  width: 24px;
  text-align: center;
  margin: 0 18px 0 0 !important;
  color: #8B5A2B !important;
  transition: color .15s, transform .15s;
}
.visitorIconBox .iconBtn:hover, .iconBtnsBox .iconBtn:hover {
  color: #E8891F !important;
  transform: scale(1.1);
}
.visitorIconBox { padding: 4px 6px 2px; }
.visitorEditorArea textarea::placeholder, .chatArea .el-textarea__inner::placeholder { color: #A9855C !important; }
.visitorEditorBtn, .kefuSendBtn .el-button--primary, .chatBoxSendBtn {
  border-radius: 14px !important;
  padding: 9px 26px !important;
}
.visitorEditorBtn { bottom: 8px !important; right: 12px !important; }

/* ---------- 主导航页：左侧导航与 iframe 外壳 ---------- */
body.text-center {
  overflow: hidden;
}

.mainLeftMenu {
  width: 86px !important;
  background:
    linear-gradient(180deg, rgba(104, 63, 26, 0.92) 0%, rgba(69, 42, 18, 0.96) 100%) !important;
  box-shadow: 10px 0 28px rgba(72, 43, 18, 0.22), inset -1px 0 0 rgba(255, 226, 172, 0.28);
  z-index: 2;
}

.mainLeftMenu::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(130px 120px at 50% 4%, rgba(255, 201, 93, 0.28), transparent 70%),
    linear-gradient(90deg, rgba(255,255,255,0.08), transparent 52%);
}

.mainLeftMenu .item {
  position: relative;
  z-index: 1;
}

.mainLogo {
  border-color: rgba(255, 218, 140, 0.9) !important;
  box-shadow: 0 8px 18px rgba(50, 28, 9, 0.28);
}

.menuLeftItem {
  position: relative;
  z-index: 1;
  height: auto !important;
  min-height: 58px;
  margin: 8px 9px;
  padding: 10px 0 8px !important;
  width: auto !important;
  border-radius: 16px;
  color: #FFE8BD !important;
  transition: background .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.menuLeftItem i,
.menuLeftItem .el-badge {
  margin-bottom: 5px !important;
  font-size: 22px !important;
}

.menuLeftItem span {
  font-size: 12px !important;
  line-height: 1.2;
}

.menuLeftItem:hover {
  background: rgba(255, 236, 190, 0.16) !important;
  color: #FFF7E4 !important;
  transform: translateY(-1px);
}

.menuLeftItem:active,
.menuLeftItem.active {
  background: linear-gradient(180deg, #FFC35B 0%, #E6922B 100%) !important;
  color: #472909 !important;
  box-shadow: 0 8px 18px rgba(57, 31, 8, 0.26), inset 0 1px 0 rgba(255,255,255,0.5);
}

.menuLeftItemLogout {
  left: 0;
  right: 0;
  bottom: 12px !important;
}

.mainRight {
  width: calc(100% - 86px) !important;
  background:
    radial-gradient(680px 420px at 92% 0%, rgba(255, 217, 129, 0.38), transparent 64%),
    linear-gradient(180deg, rgba(255, 250, 236, 0.42), rgba(255, 247, 220, 0.22)) !important;
  padding: 12px 12px 12px 14px;
  box-sizing: border-box;
}

.mainIframe {
  display: block;
  width: 100% !important;
  height: 100% !important;
  border-radius: 22px;
  background: rgba(255, 252, 242, 0.35);
  box-shadow: 0 18px 45px rgba(107, 68, 35, 0.16);
}

@media screen and (max-width: 768px) {
  .mainLeftMenu {
    width: 74px !important;
  }

  .mainRight {
    width: calc(100% - 74px) !important;
    padding: 8px;
  }

  .menuLeftItem {
    margin: 7px 6px;
    border-radius: 14px;
  }

  .mainIframe {
    border-radius: 16px;
  }
}

/* ---------- 坐席聊天：三栏工作台 ---------- */
.chatMainPage {
  min-height: 100vh;
  padding: 12px;
  box-sizing: border-box;
}
.chatMainPage > .el-row {
  display: flex;
  gap: 12px;
  height: calc(100vh - 24px);
}
.chatMainPage > .el-row > .el-col {
  float: none;
  min-width: 0;
  height: 100%;
}
.chatMainPage > .el-row > .el-col-5 {
  flex: 0 0 270px;
  width: 270px !important;
}
.chatMainPage > .el-row > .el-col-13 {
  flex: 1 1 auto;
  width: auto !important;
}
.chatMainPage > .el-row > .el-col-6 {
  flex: 0 0 300px;
  width: 300px !important;
}
.chatMainPage .chatLeft,
.chatMainPage .chatRight,
.chatMainPage .chatBgContext {
  height: 100% !important;
  margin: 0 !important;
  overflow: hidden;
}
.chatMainPage .chatBg,
.chatMainPage .chatBgContext,
.chatMainPage .replyBox {
  border: 1px solid rgba(232, 176, 75, .72) !important;
  border-radius: 16px !important;
  background: rgba(255, 252, 242, .62) !important;
  box-shadow: 0 14px 34px rgba(92, 57, 25, .13);
  -webkit-backdrop-filter: blur(18px) saturate(1.25);
  backdrop-filter: blur(18px) saturate(1.25);
}
.chatMainPage .chatBgContext {
  display: flex;
  flex-direction: column;
}
.chatMainPage .chatBgContext > .el-alert {
  margin: 10px 10px 0;
  border-radius: 10px;
}
.chatMainPage .chatBox {
  flex: 1 1 auto;
  height: auto !important;
  padding: 12px;
  box-sizing: border-box;
}
.chatMainPage .kefuFuncBox {
  flex: 0 0 auto;
  padding: 10px 12px !important;
  border-radius: 0 0 16px 16px;
}
.chatMainPage .chatArea .el-textarea__inner {
  min-height: 64px !important;
  padding: 10px 82px 10px 10px !important;
}
.chatMainPage .kefuSendBtn {
  position: absolute;
  right: 14px;
  bottom: 14px;
  z-index: 2;
}
.chatMainPage .chatRight {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.chatMainPage .chatRight > .chatBg {
  flex: 0 0 42%;
  box-sizing: border-box;
}
.chatMainPage .replyBox {
  flex: 1 1 auto;
  min-height: 0;
  padding: 12px;
  box-sizing: border-box;
  overflow: auto;
}
.chatMainPage .chatRightTitle {
  padding: 0 0 10px;
  margin-bottom: 10px;
  font-size: 15px;
  font-weight: 700;
}
.chatMainPage .chatRightTitle a {
  font-size: 13px;
}
.chatMainPage .onlineUsers {
  min-height: 58px;
  padding: 10px 12px;
  box-sizing: border-box;
}
.chatMainPage .el-tabs__header {
  margin: 0 12px;
}
.chatMainPage .el-tabs__content {
  padding: 0 4px;
}
@media screen and (max-width: 960px) {
  .chatMainPage { padding: 8px; }
  .chatMainPage > .el-row { height: calc(100vh - 16px); gap: 8px; }
  .chatMainPage > .el-row > .el-col-5 { flex-basis: 220px; width: 220px !important; }
  .chatMainPage > .el-row > .el-col-6 { flex-basis: 240px; width: 240px !important; }
}

/* ---------- 页面级重构：避免模板内联样式反向覆盖主题 ---------- */
.mainApp .mainLeftMenu {
  width: 86px !important;
}
.mainApp .mainRight {
  margin-left: 86px !important;
  width: calc(100% - 86px) !important;
  min-height: 100vh;
}
.mainApp .mainIframe {
  min-height: calc(100vh - 24px) !important;
}

.workbenchPage,
.settingsPage {
  min-height: 100vh;
  box-sizing: border-box;
  padding: 28px;
  background: transparent !important;
}
.workbenchPage .deployment-guide,
.settingsPage .profile-form {
  max-width: 1120px;
  margin: 0 auto;
  padding: 28px !important;
  background: rgba(255, 252, 242, 0.68) !important;
  border: 1px solid rgba(232, 176, 75, 0.8);
  border-radius: 16px !important;
  box-shadow: 0 18px 42px rgba(92, 57, 25, 0.16) !important;
  -webkit-backdrop-filter: blur(20px) saturate(1.3);
  backdrop-filter: blur(20px) saturate(1.3);
}
.workbenchPage .el-card__header {
  padding: 0 0 18px !important;
  border-bottom: 1px solid rgba(139, 90, 43, 0.16);
}
.workbenchPage .deployment-guide h2,
.settingsPage .form-title {
  margin: 0 !important;
  color: var(--farm-wood-dark) !important;
  font-size: 22px !important;
  line-height: 1.35;
}
.workbenchPage .deployment-section {
  margin-top: 18px;
  padding: 20px !important;
  background: rgba(255, 255, 255, 0.42) !important;
  border: 1px solid rgba(139, 90, 43, 0.12);
  border-radius: 12px !important;
}
.workbenchPage .deployment-section p {
  margin: 0 0 8px;
  color: var(--farm-text) !important;
  font-size: 14px;
  line-height: 1.7;
}
.workbenchPage .deployment-section .el-input__inner,
.settingsPage .el-input__inner,
.settingsPage .el-textarea__inner {
  background: rgba(255, 255, 255, 0.72) !important;
  border-color: rgba(139, 90, 43, 0.2) !important;
  color: var(--farm-text) !important;
  border-radius: 9px !important;
}
.workbenchPage .el-button--default,
.workbenchPage .el-button--primary {
  min-width: 42px;
}
.settingsPage .el-form-item__label,
.settingsPage .el-table th,
.settingsPage .el-table td {
  color: var(--farm-text) !important;
}
.settingsPage .config-table,
.settingsPage .el-table {
  background: rgba(255, 255, 255, 0.46) !important;
  border: 1px solid rgba(139, 90, 43, 0.12);
  border-radius: 12px !important;
}
.settingsPage .el-table tr,
.settingsPage .el-table th,
.settingsPage .el-table td {
  background: transparent !important;
}

@media screen and (max-width: 768px) {
  .mainApp .mainLeftMenu { width: 74px !important; }
  .mainApp .mainRight {
    margin-left: 74px !important;
    width: calc(100% - 74px) !important;
  }
  .workbenchPage,
  .settingsPage { padding: 12px; }
  .workbenchPage .deployment-guide,
  .settingsPage .profile-form { padding: 18px !important; }
}

/* ---------- 访客聊天：独立会话卡 ---------- */
.visitorBody {
  min-height: 100vh;
  padding: 18px;
  box-sizing: border-box;
}
@media screen and (min-width: 900px) {
  .visitorBody .chatCenter {
    width: min(980px, calc(100vw - 36px));
    max-width: 980px;
    height: min(680px, calc(100vh - 36px));
    max-height: 680px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 260px;
    grid-template-rows: 58px minmax(0, 1fr);
    overflow: hidden;
  }
  .visitorBody .chatEntTitle {
    grid-column: 1 / -1;
    grid-row: 1;
    height: auto;
  }
  .visitorBody .chatEntBox {
    grid-column: 1;
    grid-row: 2;
    width: auto;
    height: auto;
    float: none;
    border-right: 1px solid rgba(139, 90, 43, .16) !important;
  }
  .visitorBody .chatArticle {
    grid-column: 2;
    grid-row: 2;
    width: auto;
    float: none;
    display: block;
    padding: 0 0 12px;
    background: rgba(255, 249, 227, .58);
  }
}
.visitorBody .chatVisitorPage {
  height: calc(100% - 112px) !important;
  padding: 8px 10px;
  box-sizing: border-box;
}
.visitorBody .chatBoxSend {
  height: 112px;
  padding: 8px 12px !important;
  box-sizing: border-box;
}
.visitorBody .visitorEditorArea textarea {
  min-height: 52px !important;
  padding: 8px 88px 8px 8px !important;
  box-sizing: border-box;
  background: rgba(255, 255, 255, .74) !important;
  border: 1px solid rgba(139, 90, 43, .24) !important;
  border-radius: 10px !important;
  box-shadow: inset 0 1px 2px rgba(92, 57, 25, .05);
}
.visitorBody .visitorEditorBtn {
  min-width: 66px;
  bottom: 12px !important;
  right: 14px !important;
}
.visitorBody .hotQuestionTitle {
  margin: 0;
  padding: 16px 14px 12px;
  color: var(--farm-wood-dark);
}
.visitorBody .allNotice {
  padding: 2px 14px;
  line-height: 1.7;
}
@media screen and (max-width: 899px) {
  .visitorBody { padding: 0; }
  .visitorBody .chatCenter { min-height: 100vh; }
  .visitorBody .chatBoxSend { height: 106px; }
}

/* ---------- 主框架移动端：底部导航，内容全宽 ---------- */
@media screen and (max-width: 768px) {
  .mainApp .mainLeftMenu {
    position: fixed !important;
    inset: auto 0 0 0 !important;
    display: flex;
    align-items: stretch;
    justify-content: space-around;
    width: 100% !important;
    height: 68px !important;
    min-height: 68px;
    padding: 5px 6px calc(5px + env(safe-area-inset-bottom));
    box-sizing: border-box;
    overflow: hidden;
  }
  .mainApp .mainLeftMenu > div:first-child {
    display: none;
  }
  .mainApp .menuLeftItem,
  .mainApp .menuLeftItemLogout {
    position: static !important;
    flex: 1 1 0;
    min-width: 0;
    min-height: 0;
    height: auto !important;
    margin: 0 2px;
    padding: 6px 0 4px !important;
    border-radius: 11px;
  }
  .mainApp .menuLeftItem i,
  .mainApp .menuLeftItem .el-badge {
    margin-bottom: 3px !important;
    font-size: 18px !important;
  }
  .mainApp .menuLeftItem span {
    display: block;
    font-size: 11px !important;
    white-space: nowrap;
  }
  .mainApp .mainRight {
    margin-left: 0 !important;
    width: 100% !important;
    height: 100vh;
    padding: 8px 8px calc(76px + env(safe-area-inset-bottom)) !important;
  }
  .mainApp .mainIframe {
    min-height: 100% !important;
    height: 100% !important;
    border-radius: 14px;
  }
  .workbenchPage,
  .settingsPage {
    padding: 12px !important;
  }
  .workbenchPage .deployment-guide,
  .settingsPage .profile-form {
    padding: 18px !important;
  }
  .workbenchPage .deployment-section {
    padding: 16px !important;
  }
}
