/* 表情包接进小屋：长按菜单最上面那排贴表情、气泡角上的表情别被裁掉 */
.msg-rx{ display:flex; gap:2px; padding:2px 2px 6px; margin-bottom:4px; border-bottom:1px solid var(--hairline); }
.msg-rx-cell{ appearance:none; -webkit-appearance:none; border:0; background:transparent; width:34px; height:34px; border-radius:50%;
  display:grid; place-items:center; font-size:20px; line-height:1; cursor:pointer; color: var(--text-soft);
  transition: transform .15s, background .15s; }
.msg-rx-cell:active{ transform: scale(.88); }
.msg-rx-cell.on{ background: var(--accent-soft, rgba(127,168,138,.25)); }
.msg-rx-cell.more svg{ width:18px; height:18px; }
/* 角上贴的表情要露出来：气泡得是定位容器，那一行底下留点空 */
#scroll .bubble{ position: relative; }
#scroll .row:has(.bubble.rx-has){ margin-bottom: 14px; }
#scroll .row:has(.bubble.rx-has-sticker){ margin-bottom: 30px; }
/* 只有一张表情包的消息：时间小字贴在图下面 */
#scroll .bubble.st-only .meta{ display:block; text-align:right; margin-top:2px; }
/* 跟文字混在一起的表情包：小一点，自成一行 */
#scroll .bubble:not(.st-only) .st-inline{ display:block; width:76px; height:76px; margin:4px 0 2px; }
#scroll .bubble.st-only .st-inline{ width:120px; height:120px; }
/* 抽屉跟着小屋的两套颜色走：深潭（夜）/ 清溪（日），毛玻璃 */
:root[data-theme="pool"]{
  --cs-ink: #E2EAF4; --cs-soft: #9FB0C4; --cs-line: rgba(200,214,236,.16);
  --cs-paper: rgba(20,32,52,.82); --cs-floor: rgba(14,24,40,.6); --cs-accent: #E6D69E; --cs-accent-ink: #16263A;
  --cs-chip: rgba(230,214,158,.16); --cs-press: rgba(230,214,158,.12); --cs-danger: #ef8b80;
  --cs-scrim: rgba(0,0,0,.36); --cs-shadow: 0 14px 34px rgba(0,0,0,.4);
}
:root[data-theme="stream"]{
  --cs-ink: #24414A; --cs-soft: #5F7C86; --cs-line: rgba(52,92,104,.18);
  --cs-paper: rgba(244,250,250,.86); --cs-floor: rgba(232,244,244,.7); --cs-accent: #33806F; --cs-accent-ink: #ffffff;
  --cs-chip: rgba(51,128,111,.14); --cs-press: rgba(51,128,111,.1);
  --cs-scrim: rgba(20,40,48,.16); --cs-shadow: 0 14px 34px rgba(30,70,80,.18);
}
.cd-drawer, .cs-panel{ -webkit-backdrop-filter: blur(18px) saturate(1.2); backdrop-filter: blur(18px) saturate(1.2); }
/* 阿墨的声音（语音面板顶上） */
.vs-card{ margin-bottom:12px; }
.vs-card label{ display:flex; flex-direction:column; gap:6px; font-size:12px; color: var(--text-faint); margin-top:10px; }
.vs-card .lp-row{ display:flex; gap:8px; margin-top:8px; } .vs-card .lp-row .lp-input{ flex:1; min-width:0; }
.vs-card .lp-textarea{ width:100%; box-sizing:border-box; }
.vs-tip{ font-size:12px; color: var(--text-faint); line-height:1.6; margin:6px 0; }
.vs-now{ font-size:14px; margin-top:4px; }
.vs-speed{ flex-direction:row !important; align-items:center; gap:10px !important; }
.vs-speed input{ flex:1; accent-color: var(--accent); }
.vs-design{ margin-top:12px; } .vs-design > summary{ cursor:pointer; font-size:13.5px; color: var(--accent); }
.vs-design #vsGen{ margin-top:10px; width:100%; }
.vs-pv{ display:flex; align-items:center; gap:8px; margin-top:10px; font-size:12.5px; }
.vs-pv audio{ flex:1; min-width:0; height:36px; }
.vs-adv{ margin-top:12px; font-size:12px; color: var(--text-faint); } .vs-adv summary{ cursor:pointer; }
.vs-model{ margin-top:10px; }
/* 莫莫的语音条 */
#micBtn.rec{ transform: scale(1.15); background: #D88FA3 !important; }
.vi-tip{ position:fixed; left:50%; bottom:120px; transform:translateX(-50%); z-index:300; min-width:200px; padding:18px 22px 14px; border-radius:20px;
  background: rgba(20,32,52,.82); color:#fff; display:flex; flex-direction:column; align-items:center; gap:8px;
  -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); box-shadow: 0 14px 34px rgba(0,0,0,.35); }
.vi-tip.hidden{ display:none; }
.vi-tip.cancel{ background: rgba(176,74,74,.88); }
.vi-wave{ display:flex; gap:5px; height:26px; align-items:center; }
.vi-wave i{ width:4px; height:10px; border-radius:2px; background:#fff; animation: viWave 1s ease-in-out infinite; }
.vi-wave i:nth-child(2){ animation-delay:.12s } .vi-wave i:nth-child(3){ animation-delay:.24s } .vi-wave i:nth-child(4){ animation-delay:.36s } .vi-wave i:nth-child(5){ animation-delay:.48s }
@keyframes viWave{ 0%,100%{ height:8px } 50%{ height:24px } }
.vi-sec{ font-size:15px; font-variant-numeric: tabular-nums; } .vi-hint{ font-size:12px; opacity:.8; }
.vi-bar{ display:flex; align-items:center; gap:8px; border:0; background:transparent; color:inherit; padding:2px 0; cursor:pointer; font:inherit; min-width:70px; }
.vi-play{ font-size:12px; width:22px; height:22px; border-radius:50%; display:grid; place-items:center; background: rgba(255,255,255,.18); flex:0 0 auto; }
.vi-lines{ flex:1; display:flex; gap:3px; align-items:center; height:18px; }
.vi-lines i{ width:3px; border-radius:2px; background: currentColor; opacity:.55; height:6px; }
.vi-lines i:nth-child(2){ height:12px } .vi-lines i:nth-child(3){ height:16px } .vi-lines i:nth-child(4){ height:10px } .vi-lines i:nth-child(5){ height:14px } .vi-lines i:nth-child(6){ height:7px }
.vi-bar.on .vi-lines i{ animation: viWave .9s ease-in-out infinite; opacity:.9; }
.vi-dur{ font-size:12.5px; opacity:.8; font-variant-numeric: tabular-nums; }
.vi-text{ margin-top:4px; font-size:12.5px; line-height:1.55; opacity:.75; max-width:260px; }

/* 阿墨给她挑的外卖卡片 [[外卖: 东西 @ 店 | 为什么]] */
.to-card{ display:flex; flex-direction:column; gap:3px; margin:6px 0 2px; padding:12px 13px; border-radius:14px; max-width:100%; box-sizing:border-box;
  background: linear-gradient(160deg, rgba(240,205,130,.2), rgba(240,205,130,.07)); border:1px solid rgba(240,205,130,.38); }
.to-tag{ font-size:11px; color: var(--text-faint); letter-spacing:.04em; }
.to-item{ font-size:15px; font-weight:600; color: var(--text); }
.to-shop{ font-size:12.5px; color: var(--text-soft); }
.to-why{ font-size:12.5px; color: var(--text-soft); line-height:1.6; margin-top:2px; white-space:normal; overflow-wrap:anywhere; }
.to-btns{ display:flex; gap:6px; margin-top:8px; flex-wrap:wrap; }
.to-btns button{ padding:6px 11px; border-radius:999px; border:1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.08); color: var(--text);
  font: inherit; font-size:12.5px; cursor:pointer; }
.to-btns .to-done{ background: rgba(240,205,130,.3); border-color: rgba(240,205,130,.5); margin-left:auto; }
/* 表情包库里没这张图：显示成小字，不要破图标 */
.st-missing{ display:inline-block; padding:2px 9px; border-radius:999px; font-size:12.5px; color: var(--text-soft); background: rgba(255,255,255,.08); }
