/* MyChat v1: opt-in presentation layer. Legacy IDs, routes and message hooks stay intact. */
html { background: #070e18; }
body.mychat-ui {
  --mc-bg: #0b1220; --mc-surface: #131e30; --mc-raised: #1c2a40;
  --mc-text: #f3f7fb; --mc-muted: #a5b4c8; --mc-line: #2b3b52;
  --mc-accent: #6fe3c1; --mc-accent-bg: #194b49; --mc-danger: #ffb4ab;
  color-scheme: dark; background: var(--mc-bg); color: var(--mc-text);
  font-family: system-ui, -apple-system, "Segoe UI", "Microsoft YaHei", sans-serif;
  font-size: 15px; line-height: 1.55; min-width: 0;
  -webkit-user-select: text; user-select: text; -webkit-text-size-adjust: 100%;
}
.mychat-ui [hidden] { display: none !important; }
.mychat-ui a { color: inherit; }
.mychat-ui :is(button, input, textarea, select) { font: inherit; }
.mychat-ui :is(button, a, [role="button"], input, textarea, [contenteditable]):focus-visible {
  outline: 2px solid var(--mc-accent); outline-offset: 4px;
}
.mychat-ui ::selection { background: var(--mc-accent-bg); color: var(--mc-text); }
.mychat-ui :is(.wc__home-wrapper, .wc__chat-wrapper) { background: var(--mc-bg); }
.mychat-ui .wc__home-wrapper { height: 100vh; height: 100dvh; }
.mychat-ui.mc-chat { position: fixed; inset: 0; overflow: hidden; }
.mychat-ui.mc-chat .wechat__panel { position: absolute; inset: 0; min-height: 0; }
.mychat-ui.mc-chat .wc__chat-wrapper { position: absolute; inset: 0; height: auto; min-height: 0; }
.mychat-ui.mc-chat .wc__chatMsg-panel { flex: 1 1 0%; min-height: 0; }
.mychat-ui.mc-chat .wc__footTool-panel { flex: 0 0 auto; }
.mychat-ui.mc-chat .wc__headerBar.fixed { padding-bottom: calc(72px + env(safe-area-inset-top, 0px)); }
.mychat-ui.mc-chat .wc__headerBar.fixed .inner { top: env(safe-area-inset-top, 0px); }
.mychat-ui:not(.mc-chat) .wc__headerBar.fixed { padding-bottom: 72px; }
.mychat-ui .wc__headerBar .inner {
  height: 72px; align-items: center; background: var(--mc-bg) !important;
  background-image: none !important; border-bottom: 1px solid var(--mc-line);
}
.mychat-ui .wc__headerBar .inner .barTit {
  color: var(--mc-text) !important; font-weight: 650;
  font-family: inherit; font-size: 18px; line-height: 1.4;
  overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
}
.mychat-ui .wc__headerBar .inner .barTitLg { font-size: 26px; font-weight: 750; padding-left: 24px; }
.mychat-ui .wc__headerBar .inner :is(.back, .barIco, .laba, .u-sx, .batBtn) {
  min-width: 44px; min-height: 44px; background-size: 24px; line-height: 44px;
}
.mychat-ui .wc__headerBar .inner .batBtn { color: var(--mc-accent); font-size: 15px; }
.mychat-ui .wc__headerBar .inner :is(.sear, .u-qun, .u-one, .u-sx) { filter: grayscale(1) brightness(0) invert(1); }
.mychat-ui .wc__swiper-tabBar { min-height: 0; }
.mychat-ui .wc__swiper-tabBar .swiper-slide {
  height: calc(100vh - 152px); height: calc(100dvh - 152px - env(safe-area-inset-bottom, 0px));
}
.mychat-ui .wc__scrolling-panel { scrollbar-width: thin; scrollbar-color: var(--mc-line) transparent; }
.mychat-ui .mc-welcome {
  margin: 20px 20px 16px; padding: 24px; border: 1px solid #28504e; border-radius: 24px;
  background: linear-gradient(125deg, #194b49, #15283a 75%);
}
.mychat-ui .mc-eyebrow { color: var(--mc-accent); font-size: 11px; letter-spacing: 3px; font-weight: 700; }
.mychat-ui .mc-welcome h1 { font-size: 24px; line-height: 1.5; font-weight: 700; margin: 10px 0 8px; }
.mychat-ui .mc-welcome p { color: #b7ccda; font-size: 14px; margin: 0; }
.mychat-ui .mc-search { margin: 0 20px 20px; display: flex; align-items: center; gap: 8px; }
.mychat-ui .mc-search label { flex: 1; min-width: 0; position: relative; }
.mychat-ui .mc-search input {
  width: 100%; min-height: 48px; padding: 12px 16px; border: 1px solid var(--mc-line);
  border-radius: 16px; background: var(--mc-surface); color: var(--mc-text); font-size: 16px;
}
.mychat-ui input::placeholder, .mychat-ui textarea::placeholder { color: var(--mc-muted); opacity: 1; }
.mychat-ui .mc-search button {
  border: 1px solid var(--mc-line); border-radius: 14px; background: var(--mc-raised);
  color: var(--mc-text); padding: 10px 14px; min-height: 44px; cursor: pointer;
}
.mychat-ui .mc-search-status { margin: 0 24px 12px; font-size: 13px; color: var(--mc-muted); }
.mychat-ui .mc-search-status:empty { display: none; }
.mychat-ui .wc__recordChat-list { padding: 0 20px 20px; }
.mychat-ui .wc__recordChat-list ul li {
  background: var(--mc-surface); padding: 18px 16px; margin-bottom: 10px;
  border: 1px solid var(--mc-line); border-radius: 20px; cursor: pointer;
}
.mychat-ui .wc__recordChat-list ul li:before { border-radius: inherit; }
.mychat-ui .wc__recordChat-list ul li .img { width: 52px; height: 52px; margin-right: 14px; flex-shrink: 0; }
.mychat-ui .wc__recordChat-list ul li .img img { border-radius: 17px; object-fit: cover; }
.mychat-ui .wc__recordChat-list ul li .imgs { background: var(--mc-raised); border-radius: 17px; }
.mychat-ui .wc__recordChat-list ul li .imgs img { width: 15px; height: 15px; border-radius: 4px; margin: 1px; }
.mychat-ui .wc__recordChat-list ul li .info { min-width: 0; width: auto; }
.mychat-ui .wc__recordChat-list ul li .title,
.mychat-ui .wc__recordChat-list ul li .title font {
  color: var(--mc-text); font-size: 16px; font-weight: 650; overflow-wrap: anywhere;
}
.mychat-ui .wc__recordChat-list ul li .desc { color: var(--mc-muted); font-family: inherit; line-height: 1.6; font-size: 13px !important; }
.mychat-ui .wc__recordChat-list ul li .time { color: var(--mc-muted); font-size: 11px; min-width: 48px; margin-left: 8px; }
.mychat-ui .wc__material-cell:active { background-color: var(--mc-raised) !important; }
.mychat-ui .wechat__tabBar, .mychat-ui .wechat__tabBar .bottomfixed {
  background: var(--mc-surface); border-top: 1px solid var(--mc-line); height: auto;
}
.mychat-ui .wechat__tabBar .bottomfixed { padding: 8px 0 calc(8px + env(safe-area-inset-bottom, 0px)); }
.mychat-ui .wechat__tabBar ul, .mychat-ui .wechat__tabBar ul li { height: 64px; }
.mychat-ui .wechat__tabBar ul li .ico { height: 25px; width: 32px; background-size: 24px !important; margin-top: 4px; }
.mychat-ui .wechat__tabBar ul li span { color: var(--mc-muted); font-size: 12px; margin-top: 5px; }
.mychat-ui .wechat__tabBar ul li:is(.on, .swiper-pagination-bullet-active) span { color: var(--mc-accent); }
.mychat-ui .wechat__tabBar ul li:is(.on, .swiper-pagination-bullet-active) { background: #194b4940; border-radius: 14px; }
.mychat-ui :is(.wc__ucenter-list, .wc__ucinfo-personal, .wc__addrFriend-list) { padding: 16px; }
.mychat-ui :is(.wc__ucenter-list, .wc__ucinfo-personal) ul li {
  background: var(--mc-surface); border: 1px solid var(--mc-line); border-radius: 20px; margin-bottom: 16px; overflow: hidden;
}
.mychat-ui :is(.wc__ucenter-list, .wc__ucinfo-personal) ul li .item,
.mychat-ui .wc__addrFriend-list ul li .row {
  color: var(--mc-text); background: var(--mc-surface); padding: 18px; min-height: 64px;
}
.mychat-ui :is(.wc__ucenter-list, .wc__ucinfo-personal, .wc__addrFriend-list) :is(.txt, .name, .lbl, .val, .area) {
  color: var(--mc-text); font-size: 15px; font-family: inherit; background: transparent;
}
.mychat-ui :is(.wc__ucenter-list, .wc__ucinfo-personal) .txt em { color: var(--mc-text); font-size: 20px; }
.mychat-ui :is(.wc__ucenter-list, .wc__ucinfo-personal) .txt i { color: var(--mc-muted); font-size: 13px; }
.mychat-ui :is(.wc__ucenter-list, .wc__ucinfo-personal, .wc__addrFriend-list) .uimg { border-radius: 18px; }
.mychat-ui .wc__addrFriend-list ul li .row { border: 1px solid var(--mc-line); border-radius: 16px; margin-bottom: 8px; }
.mychat-ui .wc__addrFriend-list .initial { color: var(--mc-muted); font-size: 13px; }
.mychat-ui #money { color: var(--mc-accent); }
.mychat-ui .wc__chatMsg-panel { background: var(--mc-bg); }
.mychat-ui .chatMsg-cnt { padding: 20px 16px; }
.mychat-ui .chatMsg-cnt ul li { margin-bottom: 20px; }
.mychat-ui .chatMsg-cnt ul li .avatar { width: 40px; height: 40px; border-radius: 14px; flex-shrink: 0; }
.mychat-ui .chatMsg-cnt ul li .content { min-width: 0; }
.mychat-ui .chatMsg-cnt ul li .content .author { font-size: 12px; color: var(--mc-muted); margin: 0 10px 6px; }
.mychat-ui .chatMsg-cnt ul li .content .msg {
  font-size: 15px; line-height: 1.65; border-radius: 18px; padding: 12px 16px;
  margin: 0 10px; min-height: 40px; max-width: calc(100% - 20px); word-break: normal;
  overflow-wrap: anywhere; color: var(--mc-text); transition: none;
}
.mychat-ui .chatMsg-cnt ul li.others .content .msg { background-color: var(--mc-raised); border-color: var(--mc-line); border-top-left-radius: 5px; }
.mychat-ui .chatMsg-cnt ul li.me .content .msg { background-color: var(--mc-accent-bg); border-color: #2e6760; border-top-right-radius: 5px; }
.mychat-ui .chatMsg-cnt ul li .content .msg a { color: var(--mc-accent); }
.mychat-ui .chatMsg-cnt ul li .content .picture { padding: 0; }
.mychat-ui .chatMsg-cnt ul li .content .picture .img__pic { max-width: 100%; max-height: 320px; }
.mychat-ui .chatMsg-cnt ul li.time span,
.mychat-ui #J__chatMsgList li.time span { background: var(--mc-surface); color: var(--mc-muted); font-size: 11px; padding: 5px 12px; border-radius: 12px; }
.mychat-ui .chatMsg-cnt ul li.notice span { color: var(--mc-muted); font-size: 12px; }
.mychat-ui .wc__footTool-panel { background: var(--mc-surface); border-top: 1px solid var(--mc-line); padding-bottom: env(safe-area-inset-bottom, 0px); }
.mychat-ui .wc__editor-panel { padding: 12px; gap: 4px; }
.mychat-ui .wc__editor-panel .wrap-editor .editor {
  color: var(--mc-text); background: var(--mc-bg); caret-color: var(--mc-accent);
  border: 1px solid var(--mc-line); border-radius: 16px; padding: 11px 14px;
  font-size: 16px; line-height: 24px; min-height: 46px; max-height: 140px;
}
.mychat-ui .wc__editor-panel .editor:empty:before { content: attr(data-placeholder); color: var(--mc-muted); pointer-events: none; }
.mychat-ui .wc__editor-panel .btn { min-width: 34px; height: 44px; background-size: 26px; }
.mychat-ui .wc__editor-panel :is(.btn-emotion, .btn-choose) { filter: grayscale(1) brightness(0) invert(1); }
.mychat-ui .wc__editor-panel .btn-submit {
  min-width: 52px; min-height: 44px; padding: 0 12px; border-radius: 14px;
  background: var(--mc-accent); color: var(--mc-bg); font-weight: 650; font-size: 14px;
}
.mychat-ui .wc__choose-panel { background: var(--mc-surface); }
.mychat-ui :is(.wrap__topbar-menu ul, .wc__popup-menu) { color: var(--mc-text); background: var(--mc-raised); border-radius: 16px; }
.mychat-ui .wrap__topbar-menu ul li { color: var(--mc-text); font-size: 14px; }
.mychat-ui.mc-auth { overflow-y: auto; }
.mychat-ui.mc-auth .wc__home-wrapper { height: auto; min-height: 100vh; min-height: 100dvh; }
.mychat-ui .wc__lgregPanel { padding: 40px 24px; width: 100%; max-width: 500px; margin: auto; }
.mychat-ui .wc__lgregPanel .hdtips { color: var(--mc-text); font-size: 28px; font-weight: 750; margin-bottom: 12px; padding: 0; }
.mychat-ui .mc-auth-intro { color: var(--mc-muted); font-size: 14px; margin: 12px 0 30px; }
.mychat-ui .mc-auth-mark { display: block; color: var(--mc-accent); font-weight: 700; letter-spacing: 4px; font-size: 13px; margin-bottom: 26px; }
.mychat-ui .wc__lgregPanel .forms ul { background: transparent; }
.mychat-ui .wc__lgregPanel .forms ul li { background: var(--mc-surface); border: 1px solid var(--mc-line); border-radius: 16px; padding: 16px; margin-bottom: 12px; }
.mychat-ui .wc__lgregPanel .forms .lbl { padding: 0; }
.mychat-ui .wc__lgregPanel .forms .lbl em { width: 80px; color: var(--mc-muted); font-size: 14px; }
.mychat-ui .wc__lgregPanel .forms .iptxt { color: var(--mc-text); background: transparent; font-size: 16px; min-width: 0; }
.mychat-ui .wc__btn-primary { background: var(--mc-accent); color: var(--mc-bg); border-radius: 16px; font-size: 16px; font-weight: 650; line-height: 50px; min-height: 50px; }
.mychat-ui .wc__lgregPanel .btns { padding: 20px 0 0; }
.mychat-ui.mc-auth #J__btnreg[onclick] { background: var(--mc-accent); color: var(--mc-bg); }
.mychat-ui .wc__lgregPanel .btns a:not([onclick]) { background: var(--mc-surface) !important; border: 1px solid var(--mc-line); color: var(--mc-text); }
.mychat-ui :is(.btn-info, .btn-info2) { border: 1px solid var(--mc-line); border-radius: 10px; min-height: 44px; padding: 10px; font-size: 13px; cursor: pointer; }
.mychat-ui .btn-info { color: var(--mc-accent); background: var(--mc-accent-bg); }
.mychat-ui .btn-info2 { color: var(--mc-muted); background: var(--mc-raised); }
.mc-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
@media (min-width: 800px) {
  body.mychat-ui { border-inline: 1px solid var(--mc-line); box-shadow: 0 0 100px #0005; }
  .mychat-ui .mc-welcome h1 { font-size: 30px; }
  .mychat-ui .wc__recordChat-list ul li { padding: 20px; }
  .mychat-ui .wc__lgregPanel { padding-block: 64px; }
}
@media (max-width: 359px) {
  .mychat-ui .mc-welcome { padding: 18px; margin-inline: 12px; }
  .mychat-ui .mc-welcome h1 { font-size: 21px; }
  .mychat-ui .wc__recordChat-list { padding-inline: 12px; }
  .mychat-ui .wc__editor-panel { padding: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  .mychat-ui *, .mychat-ui *:before, .mychat-ui *:after {
    animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important;
  }
}
