.reply-page { min-height:0; height:100%; background:#f4f6f8; color:#303133; }
#replyRoot { height:100%; min-height:0; }
.reply-shell { display:flex; flex-direction:column; height:100%; min-height:0; background:#fff; }
.reply-library-tabs { display:flex; gap:30px; height:46px; padding:0 20px; border-bottom:1px solid #e5e7eb; flex:0 0 auto; }
.reply-library-tabs button { position:relative; border:0; background:transparent; color:#4b5563; padding:0 2px; font-size:14px; cursor:pointer; }
.reply-library-tabs button.active { color:#24a315; font-weight:600; }
.reply-library-tabs button.active::after { content:""; position:absolute; left:0; right:0; bottom:0; height:2px; background:#24a315; }
.reply-library-tabs button:disabled { color:#b7bcc5; cursor:not-allowed; }
.reply-workspace { display:grid; grid-template-columns:220px minmax(760px, 1fr); flex:1; min-height:0; }
.reply-groups.managed-wechat-groups { min-height:0; padding:10px; border-width:0 1px 0 0; border-color:#e8e8e8; overflow:auto; box-sizing:border-box; }
.reply-groups .managed-wechat-group-main em { white-space:nowrap; }
.reply-group-drag { cursor:grab; }
.reply-group-drag:active { cursor:grabbing; }
.reply-group-row.dragging { opacity:.45; }
.reply-group-row.drag-before::before,.reply-group-row.drag-after::after { content:""; position:absolute; z-index:2; left:12px; right:9px; height:2px; background:#24a315; }
.reply-group-row.drag-before::before { top:-1px; }
.reply-group-row.drag-after::after { bottom:-1px; }
.reply-main { display:flex; flex-direction:column; min-width:0; min-height:0; background:#fff; }
.reply-main-title { height:48px; display:flex; align-items:center; gap:10px; padding:0 16px; border-bottom:1px solid #e8eaed; }
.reply-main-title strong { font-size:15px; }
.reply-main-title span { color:#9097a1; font-size:12px; }
.reply-toolbar { min-height:50px; display:flex; align-items:center; gap:8px; padding:8px 14px; border-bottom:1px solid #eceef0; }
.reply-toolbar button,.reply-toolbar select,.reply-toolbar input { height:32px; box-sizing:border-box; }
.reply-toolbar .primary-button { padding:0 16px; }
.reply-toolbar select { width:140px; border:1px solid #dcdfe6; border-radius:3px; background:#fff; padding:0 28px 0 10px; color:#606266; }
.reply-type-select { width:140px; flex:0 0 140px; }
.reply-type-select .shared-select-menu { max-height:248px; overflow-y:auto; }
.reply-type-select .shared-select-menu button { height:34px; }
.reply-toolbar-spacer { flex:1; }
.reply-search { display:flex; width:210px; height:32px; border:1px solid #dcdfe6; border-radius:3px; background:#fff; overflow:hidden; }
.reply-search input { min-width:0; flex:1; border:0; outline:0; padding:0 10px; }
.reply-search button { width:34px; border:0; border-left:1px solid #e3e5e8; background:#fff; position:relative; }
.reply-search button::before { content:""; position:absolute; width:9px; height:9px; border:2px solid #626971; border-radius:50%; left:10px; top:8px; }
.reply-search button::after { content:""; position:absolute; width:6px; height:2px; background:#626971; transform:rotate(45deg); left:20px; top:19px; }
.reply-table-wrap { flex:1; min-height:0; overflow:auto; }
.reply-table { width:100%; min-width:1120px; border-collapse:collapse; table-layout:fixed; }
.reply-table th { position:sticky; top:0; z-index:2; height:42px; background:#f7f8fa; color:#4b5563; font-weight:600; text-align:left; border-bottom:1px solid #e5e7eb; }
.reply-table th,.reply-table td { padding:8px 12px; vertical-align:middle; }
.reply-table td { height:68px; border-bottom:1px solid #eceef1; color:#4b5563; }
.reply-table th:nth-child(1),.reply-table td:nth-child(1) { width:34px; text-align:center; padding-left:14px; padding-right:4px; }
.reply-table th:nth-child(2),.reply-table td:nth-child(2) { width:46px; text-align:center; color:#8b929b; }
.reply-table th:nth-child(3) { width:160px; }
.reply-table th:nth-child(4) { width:250px; }
.reply-table th:nth-child(5) { width:160px; }
.reply-table th:nth-child(6) { width:110px; }
.reply-table th:nth-child(7) { width:260px; }
.reply-table td:nth-child(5),.reply-table td:nth-child(6) { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.reply-type-cell>span,.reply-group-cell>span { display:block; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.reply-table td > strong { display:block; color:#303133; font-weight:500; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.reply-table td > small { display:block; margin-top:5px; color:#9aa0a8; }
.reply-content-cell { position:relative; overflow:visible; }
.reply-content-cell:hover,.reply-content-cell:focus-within { z-index:12; }
.reply-content-summary { max-width:100%; padding:0; border:0; background:transparent; color:#59616c; font:inherit; line-height:24px; text-align:left; white-space:normal; cursor:default; }
.reply-content-summary:hover,.reply-content-summary:focus-visible { color:#249c16; outline:none; }
.reply-content-popover { position:absolute; z-index:30; left:12px; top:calc(100% - 4px); width:390px; max-width:min(390px,calc(100vw - 40px)); display:none; overflow:hidden; border:1px solid #dfe3e8; border-radius:4px; background:#fff; box-shadow:0 8px 24px rgba(0,0,0,.14); text-align:left; white-space:normal; }
.reply-content-cell:hover .reply-content-popover,.reply-content-cell:focus-within .reply-content-popover { display:block; }
.reply-table tbody tr:nth-last-child(-n+3) .reply-content-popover { top:auto; bottom:calc(100% - 4px); }
.reply-content-popover > header { height:40px; display:flex; align-items:center; justify-content:space-between; padding:0 12px; border-bottom:1px solid #eceef1; background:#fafbfc; }
.reply-content-popover > header strong { color:#303133; font-size:14px; font-weight:500; }
.reply-content-popover > header span { color:#9097a1; font-size:12px; }
.reply-content-popover > div { max-height:min(520px,calc(100vh - 140px)); overflow:auto; padding:5px 14px; }
.reply-content-popover article { display:grid; grid-template-columns:24px minmax(0,1fr); gap:10px; align-items:start; padding:11px 0; border-bottom:1px solid #eef0f2; }
.reply-content-popover article:last-child { border-bottom:0; }
.reply-content-popover article > em { width:22px; height:22px; display:grid; place-items:center; border-radius:50%; background:#f0f1f2; color:#707780; font-size:12px; font-style:normal; }
.reply-content-popover article > .shared-content-display { width:100%; min-width:0; max-width:326px; margin:0; gap:5px; }
.reply-content-popover .shared-content-display-type { color:#8b929b; line-height:17px; }
.reply-content-popover [data-content-type="文字"] .shared-send-text { width:100%; max-width:100%; color:#4b5563; line-height:21px; }
.reply-content-popover article > [data-content-type="图片"] { width:min(180px,100%); max-width:180px; justify-self:start; }
.reply-content-popover [data-content-type="图片"] .shared-send-media-preview { width:max-content; max-width:100%; }
.reply-content-popover article > [data-component-key="contentDisplay"][data-content-type="图片"].is-compact .shared-send-media-preview > img { width:auto; max-width:180px; height:auto; max-height:120px; object-fit:contain; }
.reply-content-popover article > [data-content-type="视频"] { width:min(260px,100%); max-width:260px; justify-self:start; }
.reply-content-popover [data-content-type="视频"] .shared-send-media-preview { width:100%; aspect-ratio:16 / 9; background:#eef1f3; }
.reply-content-popover [data-content-type="视频"] .shared-send-media-preview > img { width:100%; max-width:none; height:100%; max-height:none; object-fit:cover; }
.reply-content-popover [data-content-type="视频"] .shared-send-media-play { width:32px; height:32px; }
.reply-content-popover [data-content-type="视频"] .shared-send-media-play > img { width:20px; height:20px; }
.reply-content-popover article > [data-content-type="表情"] { width:min(120px,100%); max-width:120px; justify-self:start; }
.reply-content-popover [data-content-type="表情"] .shared-send-media-preview { width:max-content; max-width:100%; }
.reply-content-popover article > [data-component-key="contentDisplay"][data-content-type="表情"].is-compact .shared-send-media-preview > img { width:auto; max-width:120px; height:auto; max-height:112px; object-fit:contain; }
.reply-content-popover article > [data-content-type="文件"] { width:min(280px,100%); max-width:280px; justify-self:start; }
.reply-content-popover .shared-send-file { min-height:62px; gap:10px; padding:8px 10px; }
.reply-content-popover .shared-send-file > i { width:40px; height:44px; flex-basis:40px; }
.reply-content-popover article > [data-content-type="链接"] { width:min(260px,100%); max-width:260px; justify-self:start; }
.reply-content-popover .shared-send-link.is-card { min-height:76px; padding:8px 9px; }
.reply-content-popover .shared-send-link.is-card > strong { margin-bottom:5px; }
.reply-content-popover .shared-send-link-body { grid-template-columns:minmax(0,1fr) 46px; gap:8px; }
.reply-content-popover .shared-send-link-body > i { width:46px; height:46px; }
.reply-content-popover article > [data-content-type="小程序"] { width:min(196px,100%); max-width:196px; justify-self:start; }
.reply-content-popover [data-content-type="小程序"] .shared-mini-program-card { grid-template-rows:18px auto auto 24px; gap:4px; padding:7px 8px 5px; }
.reply-content-popover [data-content-type="小程序"] .shared-mini-program-card > header { height:18px; font-size:11px; }
.reply-content-popover [data-content-type="小程序"] .shared-mini-program-card > header > img { width:14px; height:14px; flex-basis:14px; }
.reply-content-popover [data-content-type="小程序"] .shared-mini-program-card > strong { font-size:13px; line-height:19px; }
.reply-content-popover [data-content-type="小程序"] .shared-mini-program-card > figure { aspect-ratio:196 / 159; }
.reply-content-popover [data-content-type="小程序"] .shared-mini-program-card > footer { min-height:24px; font-size:11px; }
.reply-content-popover article > [data-content-type="视频号"] { width:min(188px,100%); max-width:188px; justify-self:start; }
.reply-content-popover [data-content-type="视频号"] .shared-video-channel-card { grid-template-rows:auto 28px auto 24px; gap:5px; padding:7px 8px 5px; }
.reply-content-popover [data-content-type="视频号"] .shared-video-channel-card > figure { aspect-ratio:218 / 226; }
.reply-content-popover [data-content-type="视频号"] .shared-video-channel-account { gap:6px; }
.reply-content-popover [data-content-type="视频号"] .shared-video-channel-account > i { width:22px; height:22px; flex-basis:22px; }
.reply-content-popover [data-content-type="视频号"] .shared-video-channel-account > strong { font-size:13px; }
.reply-content-popover [data-content-type="视频号"] .shared-video-channel-card > p { min-height:18px; font-size:12px; line-height:18px; }
.reply-content-popover [data-content-type="视频号"] .shared-video-channel-card > footer { font-size:11px; }
.reply-content-popover [data-content-type="视频号"] .shared-video-channel-card > footer > img { width:15px; height:15px; flex-basis:15px; }
.reply-content-popover article > [data-content-type="商品"] { width:min(224px,100%); max-width:224px; justify-self:start; }
.reply-content-popover article > [data-content-type="语音"] { width:min(190px,100%); max-width:190px; justify-self:start; }
.reply-content-popover article > [data-content-type="素材库"] { width:min(280px,100%); max-width:280px; justify-self:start; }
.reply-row-actions { position:relative; display:flex; align-items:center; gap:12px; white-space:nowrap; }
.reply-row-actions button { padding:0; border:0; background:transparent; color:#249c16; cursor:pointer; }
.reply-table tbody tr:has(.reply-sort-menu) { position:relative; z-index:20; }
.reply-sort-menu { position:absolute; z-index:40; top:20px; right:-6px; width:76px; padding:5px 0; border:1px solid #e4e7eb; border-radius:3px; background:#fff; box-shadow:0 5px 14px rgba(0,0,0,.14); }
.reply-sort-menu button { width:100%; height:34px; display:block; padding:0 14px; color:#606266; line-height:34px; text-align:left; }
.reply-sort-menu button:hover { color:#249c16; background:#f3f8ef; }
.reply-table tbody tr:nth-last-child(-n+3) .reply-sort-menu { top:auto; bottom:20px; }
.reply-empty { padding:56px 0; color:#9ca3af; text-align:center; }
.reply-list-footer { height:52px; flex:0 0 auto; display:flex; align-items:center; justify-content:space-between; padding:0 16px; border-top:1px solid #e5e7eb; background:#fff; }
.reply-list-footer > div:first-child { display:flex; align-items:center; gap:8px; color:#737a84; }
.reply-list-footer button,.reply-pagination button { height:30px; padding:0 10px; border:1px solid #dcdfe6; border-radius:3px; background:#fff; color:#606266; }
.reply-list-footer button:not(:disabled) { cursor:pointer; }
.reply-list-footer button:disabled { color:#c0c4cc; background:#f7f8fa; }
.reply-pagination { display:flex; align-items:center; gap:5px; }
.reply-pagination button { min-width:30px; padding:0 7px; }
.reply-pagination button.active { border-color:#27a719; color:#27a719; background:#f3fbf1; }
.reply-pagination span { color:#9ca3af; }
.reply-modal-mask { position:fixed; inset:0; z-index:1100; display:flex; align-items:center; justify-content:center; padding:24px; background:rgba(0,0,0,.38); }
.reply-modal > header { height:54px; flex:0 0 auto; display:flex; align-items:center; justify-content:space-between; padding:0 18px; border-bottom:1px solid #e6e8eb; }
.reply-modal > header strong { font-size:16px; }
.reply-modal > header button { border:0; background:transparent; color:#8c939d; font-size:24px; cursor:pointer; }
.reply-modal > footer { flex:0 0 auto; display:flex; justify-content:flex-end; gap:10px; padding:12px 18px; border-top:1px solid #e6e8eb; background:#fff; }
.reply-modal > footer button { min-width:76px; height:34px; }
.reply-form-row { display:grid; grid-template-columns:84px minmax(0,1fr); gap:12px; align-items:center; margin-bottom:14px; }
.reply-form-row > span b { color:#dc3f3f; margin-right:4px; }
.reply-form-row select,.reply-form-row input { width:100%; height:34px; box-sizing:border-box; border:1px solid #dcdfe6; border-radius:3px; padding:0 10px; background:#fff; }
.reply-form-row > div { position:relative; }
.reply-form-row > div small { position:absolute; right:9px; top:9px; color:#a0a6ad; }
.reply-form-row > div input { padding-right:48px; }
.reply-draft-group-select { width:100%; height:34px; }
.reply-draft-group-select .shared-select-trigger { height:34px; color:#555; }
.reply-draft-group-select .shared-select-menu { top:36px; z-index:140; max-height:210px; overflow-y:auto; }
.reply-form-content { align-items:start; margin-bottom:0; }
.reply-form-content > span { padding-top:11px; }
.reply-form-content > .reply-content-component { min-width:0; }
.reply-content-list { min-height:110px; }
.reply-editor-empty { display:flex; align-items:center; justify-content:center; height:108px; color:#a1a7ae; border:1px dashed #d9dde2; background:#fafbfc; }
.reply-content-row { position:relative; display:grid; grid-template-columns:30px minmax(0, 1fr); gap:8px; min-height:84px; padding:12px 8px; border-bottom:1px solid #e8eaed; }
.reply-content-row > em,.reply-view-list article > em { width:24px; height:24px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:#eef0f2; color:#6f7780; font-style:normal; }
.reply-content-body { padding-right:166px; min-width:0; }
.reply-content-actions { position:absolute; right:8px; top:12px; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; width:158px; }
.reply-content-actions button { height:27px; border:1px solid #dcdfe6; border-radius:3px; background:#fff; color:#606266; font-weight:400; padding:0 7px; }
.reply-content-actions button:disabled { color:#c0c4cc; }
.reply-type-toolbar { display:flex; flex-wrap:wrap; gap:7px; padding:12px 0; }
.reply-type-toolbar button { height:31px; padding:0 12px; border:1px solid #d7dbe0; border-radius:3px; background:#fff; color:#4b5563; font-weight:400; cursor:pointer; }
.reply-type-toolbar button:hover { border-color:#2aaa1a; color:#249c16; }
.reply-editor-mask { z-index:1200; }
.reply-modal { width:min(620px, calc(100vw - 48px)); max-height:calc(100vh - 48px); display:flex; flex-direction:column; border-radius:4px; background:#fff; box-shadow:0 15px 45px rgba(0,0,0,.22); }
.reply-modal.reply-modal-compact { width:430px; }
.reply-move-modal .reply-modal-body { min-height:190px; overflow:visible; }
.reply-move-group-select { width:100%; }
.reply-move-group-select .shared-select-trigger { height:34px; color:#555; }
.reply-move-group-select .shared-select-menu { top:36px; z-index:140; max-height:176px; overflow-y:auto; }
.reply-modal-body { min-height:0; overflow:auto; padding:20px; }
.reply-editor-modal { width:min(760px,calc(100vw - 64px)); max-height:calc(100vh - 64px); }
.reply-editor-modal:has(.reply-draft-group-select.open) { min-height:400px; }
.reply-editor-body { flex:1; max-height:calc(100vh - 190px); padding:18px 20px; }
.reply-content-component .shared-content-setting { min-height:190px; }
.reply-content-component .shared-send-list { min-height:126px; }
.reply-content-component .shared-content-setting:has(.shared-content-empty) { min-height:0; }
.reply-content-component .shared-send-list:has(.shared-content-empty) { min-height:40px; }
.reply-content-component .shared-content-empty { min-height:40px; }
.reply-page .mass-send-content-modal { z-index:1300; }
.reply-content-modal-form { display:flex; flex-direction:column; gap:12px; }
.reply-content-modal-form > input,.reply-content-modal-form > textarea,.reply-content-modal-form select { width:100%; box-sizing:border-box; border:1px solid #dcdfe6; border-radius:3px; padding:8px 10px; }
.reply-content-modal-form > input { height:34px; }
.reply-content-modal-form > textarea { min-height:130px; resize:vertical; line-height:1.6; }
.reply-content-modal-form > img { width:180px; max-height:140px; object-fit:cover; }
.reply-upload { width:120px; height:34px; display:flex; align-items:center; justify-content:center; border:1px solid #dcdfe6; color:#4b5563; cursor:pointer; }
.reply-upload input { display:none; }
.reply-material-list { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:10px; max-height:430px; overflow:auto; }
.reply-material-list label { position:relative; min-width:0; padding:10px; border:1px solid #dfe2e6; border-radius:3px; cursor:pointer; }
.reply-material-list label:has(input:checked) { border-color:#2aaa1a; background:#f4fbf2; }
.reply-material-list input { position:absolute; right:8px; top:8px; }
.reply-material-list label > span { display:block; min-height:76px; }
.reply-material-list label > strong { display:block; margin-top:8px; font-weight:500; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.reply-view-title { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
.reply-view-title span { color:#8b929b; }
.reply-view-list article { display:grid; grid-template-columns:30px minmax(0,1fr); gap:10px; padding:12px 0; border-bottom:1px solid #eceef1; }
.reply-modal-field { display:grid; grid-template-columns:80px 1fr; gap:10px; align-items:center; }
.reply-modal-field input,.reply-modal-field select { height:34px; border:1px solid #dcdfe6; border-radius:3px; padding:0 10px; }
.reply-modal-field small { grid-column:2; margin-top:-8px; color:#9ca3af; text-align:right; }
.reply-confirm { display:flex; gap:14px; align-items:flex-start; }
.reply-confirm > i { width:34px; height:34px; flex:0 0 auto; display:flex; align-items:center; justify-content:center; border:2px solid #ee9c20; border-radius:50%; color:#ee9c20; font-size:20px; font-style:normal; }
.reply-confirm strong { font-size:15px; }
.reply-confirm p { margin:8px 0 0; color:#7d848c; line-height:1.6; }
.reply-import-box { min-height:110px; display:flex; flex-direction:column; gap:12px; justify-content:center; padding:16px; background:#f7f8fa; }
.reply-import-box p { margin:0; }
.reply-import-box small { color:#d14343; }
.reply-toast { position:fixed; z-index:1500; left:50%; top:72px; transform:translateX(-50%); padding:10px 18px; border-radius:3px; background:rgba(30,32,35,.9); color:#fff; box-shadow:0 6px 18px rgba(0,0,0,.18); }
.reply-page .shared-content-display { max-width:100%; }
.reply-page .shared-content-display.is-compact { margin:0; }
@media (max-width:1100px) {
  .reply-workspace { grid-template-columns:190px minmax(700px,1fr); overflow:auto; }
  .reply-table th:nth-child(4) { width:240px; }
}
