/* ==========================================================================
   AI 卡通助手「小焊」 · 样式表
   焊装车间 · 设备维修实时监控大屏（深色工业风）
   所有选择器均限制在 #aip-root 内，不污染大屏现有样式。
   ========================================================================== */

#aip-root{
  /* ---- 设计令牌（与大屏保持一致） ---- */
  --aip-cyan:#22D3EE;
  --aip-cyan-deep:#0E7490;
  --aip-amber:#F59E0B;
  --aip-text:#CFE9FA;
  --aip-text-hi:#EAF6FF;
  --aip-dim:#7FA8C9;
  --aip-line:rgba(56,189,248,.22);
  --aip-panel-a:rgba(19,44,74,.86);
  --aip-panel-b:rgba(8,22,42,.80);
  --aip-bubble:#142E4C;
  --aip-radius:12px;

  position:fixed;
  right:22px;
  bottom:18px;
  z-index:9000;
  width:auto;
  height:auto;
  pointer-events:none;              /* 关键：不遮挡大屏图表的点击交互 */
  font-family:"Microsoft YaHei","PingFang SC","Noto Sans SC",sans-serif;
  font-size:14px;
  line-height:1.55;
  color:var(--aip-text);
  text-align:left;
  letter-spacing:0;
  -webkit-font-smoothing:antialiased;
  -webkit-tap-highlight-color:transparent;
}
#aip-root *,#aip-root *::before,#aip-root *::after{ box-sizing:border-box; }
#aip-root button{
  font-family:inherit;font-size:inherit;color:inherit;
  background:none;border:0;padding:0;margin:0;cursor:pointer;
  -webkit-appearance:none;appearance:none;
}
#aip-root svg{ display:block;overflow:visible; }
.aip-cssprobe{ position:fixed; }

/* ==========================================================================
   一、收起态：卡通小人
   ========================================================================== */
#aip-root .aip-launcher{
  position:relative;
  display:block;
  width:152px;
  height:182px;
  pointer-events:auto;
  outline:none;
  transition:transform .34s cubic-bezier(.3,.9,.3,1.04);
}
/* 展开时小人挪到抽屉左侧站好，继续保持可见与动画（思考气泡不被遮挡） */
#aip-root.aip-open .aip-launcher{ transform:translateX(-476px); }
#aip-root.aip-open .aip-tip{ animation:none;opacity:0; }
#aip-root .aip-tip{ transition:opacity .2s ease; }
#aip-root .aip-figurewrap{
  position:absolute;left:0;right:0;bottom:0;height:178px;
  display:block;
  transition:transform .2s ease;
}
#aip-root .aip-launcher:hover .aip-figurewrap{ transform:translateY(-4px); }
#aip-root .aip-figure{
  width:100%;height:100%;
  animation:aip-float 3.6s ease-in-out infinite;
}
@keyframes aip-float{
  0%,100%{ transform:translateY(0); }
  50%    { transform:translateY(-8px); }
}

/* 地面光晕 */
#aip-root .aip-glow{
  position:absolute;left:50%;bottom:-6px;width:118px;height:22px;
  margin-left:-59px;border-radius:50%;
  background:radial-gradient(closest-side,rgba(34,211,238,.34),rgba(34,211,238,0));
  animation:aip-glow 3.6s ease-in-out infinite;
}
@keyframes aip-glow{
  0%,100%{ opacity:.75;transform:scale(1); }
  50%    { opacity:.36;transform:scale(.82); }
}

/* 眨眼 */
#aip-root .aip-eye{
  transform-box:fill-box;
  transform-origin:center center;
  transition:transform .085s ease-in-out;
}
#aip-root.aip-blinking .aip-eye{ transform:scaleY(.07); }

/* 说话（嘴巴动） */
#aip-root .aip-mouth-open{ opacity:0; }
#aip-root.aip-talking .aip-mouth-idle{ opacity:0; }
#aip-root.aip-talking .aip-mouth-open{ opacity:1; animation:aip-talk .3s ease-in-out infinite alternate; }
@keyframes aip-talk{
  from{ transform:scaleY(.42); }
  to  { transform:scaleY(1.06); }
}
#aip-root .aip-mouth-open{ transform-box:fill-box;transform-origin:center center; }

/* 头顶省略号气泡（思考中） */
#aip-root .aip-think{
  position:absolute;left:50%;top:-4px;
  display:flex;align-items:center;gap:5px;
  padding:9px 12px;border-radius:14px;
  background:rgba(11,30,52,.95);
  border:1px solid rgba(34,211,238,.42);
  box-shadow:0 8px 20px rgba(0,0,0,.5),0 0 18px rgba(34,211,238,.14);
  opacity:0;transform:translateX(-50%) scale(.6);
  transition:opacity .18s ease,transform .22s cubic-bezier(.2,.9,.3,1.4);
  pointer-events:none;
  white-space:nowrap;
}
#aip-root.aip-busy .aip-think{ opacity:1;transform:translateX(-50%) scale(1); }
#aip-root .aip-think i{
  width:6px;height:6px;border-radius:50%;background:#5FD8EE;display:block;
  animation:aip-dot 1.1s ease-in-out infinite;
}
#aip-root .aip-think i:nth-child(2){ animation-delay:.16s; }
#aip-root .aip-think i:nth-child(3){ animation-delay:.32s; }
@keyframes aip-dot{
  0%,100%{ opacity:.28;transform:translateY(0); }
  50%    { opacity:1;transform:translateY(-3px); }
}

/* 旁侧提示气泡 */
#aip-root .aip-tip{
  position:absolute;right:100%;bottom:108px;margin-right:-14px;
  padding:8px 13px;border-radius:12px 12px 3px 12px;
  font-size:13px;letter-spacing:.5px;line-height:1.3;white-space:nowrap;
  color:#D8EEFC;
  background:linear-gradient(160deg,rgba(20,52,86,.96),rgba(10,28,50,.96));
  border:1px solid rgba(34,211,238,.42);
  box-shadow:0 8px 22px rgba(0,0,0,.48),0 0 20px rgba(34,211,238,.10);
  pointer-events:none;                 /* 不拦截大屏点击 */
  animation:aip-tipin .5s ease-out .5s both;
}
@keyframes aip-tipin{
  from{ opacity:0;transform:translateX(8px); }
  to  { opacity:1;transform:translateX(0); }
}
#aip-root .aip-tip .aip-tipdot{
  display:inline-block;width:6px;height:6px;border-radius:50%;
  background:#22C55E;box-shadow:0 0 8px #22C55E;margin-right:7px;
  vertical-align:1px;animation:aip-pulse 1.8s ease-in-out infinite;
}
@keyframes aip-pulse{ 0%,100%{opacity:1;} 50%{opacity:.25;} }

/* ==========================================================================
   二、展开态：对话抽屉
   ========================================================================== */
#aip-root .aip-drawer{
  position:fixed;right:22px;bottom:22px;
  width:440px;height:620px;
  max-width:calc(100vw - 24px);
  max-height:calc(100vh - 44px);
  display:flex;flex-direction:column;
  overflow:hidden;
  border-radius:16px;
  border:1px solid rgba(34,211,238,.30);
  background:linear-gradient(160deg,var(--aip-panel-a),var(--aip-panel-b));
  -webkit-backdrop-filter:blur(14px) saturate(140%);
  backdrop-filter:blur(14px) saturate(140%);
  box-shadow:0 26px 64px rgba(0,0,0,.58),0 0 0 1px rgba(34,211,238,.06) inset,0 0 46px rgba(34,211,238,.07);
  pointer-events:auto;
  opacity:0;visibility:hidden;
  transform:translateY(16px) scale(.965);
  transform-origin:100% 100%;
  transition:opacity .22s ease,transform .28s cubic-bezier(.2,.9,.3,1.08),visibility .28s;
}
#aip-root.aip-open .aip-drawer{
  opacity:1;visibility:visible;transform:none;
}

/* ---- 顶部 ---- */
#aip-root .aip-head{
  flex:0 0 auto;display:flex;align-items:center;gap:11px;
  padding:11px 12px 11px 14px;
  border-bottom:1px solid rgba(56,189,248,.18);
  background:linear-gradient(90deg,rgba(34,211,238,.15),rgba(12,32,58,.28) 58%,rgba(34,211,238,.04));
  position:relative;
}
#aip-root .aip-head::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(34,211,238,.7),transparent);
  opacity:.65;
}
#aip-root .aip-avatar{
  flex:0 0 auto;width:42px;height:42px;border-radius:50%;
  display:grid;place-items:center;
  background:radial-gradient(circle at 50% 32%,rgba(34,211,238,.26),rgba(10,26,46,.9));
  border:1px solid rgba(34,211,238,.45);
  box-shadow:0 0 16px rgba(34,211,238,.22);
  overflow:hidden;
}
#aip-root .aip-avatar svg{ width:36px;height:39px;transform:translateY(1px); }
#aip-root .aip-id{ flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px; }
#aip-root .aip-name{
  font-size:15.5px;font-weight:700;color:#EAF6FF;letter-spacing:1px;line-height:1.2;
  display:flex;align-items:center;gap:7px;
}
#aip-root .aip-name em{
  font-style:normal;font-size:10.5px;font-weight:400;letter-spacing:0;
  color:#7FA8C9;padding:1px 6px;border-radius:6px;
  background:rgba(56,189,248,.10);border:1px solid rgba(56,189,248,.22);
}
#aip-root .aip-status{
  display:inline-flex;align-items:center;gap:5px;
  font-style:normal;font-size:11.5px;color:#63D9AE;letter-spacing:.4px;
}
#aip-root .aip-status i{
  width:6px;height:6px;border-radius:50%;background:currentColor;
  box-shadow:0 0 8px currentColor;display:block;
}
#aip-root .aip-status.is-thinking{ color:#FBBF24; }
#aip-root .aip-status.is-thinking i{ animation:aip-pulse .85s ease-in-out infinite; }
#aip-root .aip-status.is-off{ color:#87A3BB; }
#aip-root .aip-acts{ flex:0 0 auto;display:flex;gap:6px; }
#aip-root .aip-iconbtn{
  width:29px;height:29px;border-radius:8px;display:grid;place-items:center;
  color:#9DC2DD;background:rgba(56,189,248,.07);
  border:1px solid rgba(56,189,248,.20);
  transition:background .16s,color .16s,border-color .16s,transform .16s;
}
#aip-root .aip-iconbtn:hover{
  color:#EAF6FF;background:rgba(34,211,238,.20);
  border-color:rgba(34,211,238,.55);transform:translateY(-1px);
}
#aip-root .aip-iconbtn svg{ width:15px;height:15px; }

/* ---- 消息区 ---- */
#aip-root .aip-msgs{
  flex:1 1 auto;min-height:0;
  overflow-y:auto;overflow-x:hidden;
  padding:14px 14px 4px;
  scrollbar-width:thin;
  scrollbar-color:rgba(34,211,238,.34) transparent;
}
#aip-root .aip-msgs::-webkit-scrollbar{ width:6px; }
#aip-root .aip-msgs::-webkit-scrollbar-track{ background:transparent; }
#aip-root .aip-msgs::-webkit-scrollbar-thumb{
  background:rgba(34,211,238,.30);border-radius:3px;
}
#aip-root .aip-msgs::-webkit-scrollbar-thumb:hover{ background:rgba(34,211,238,.55); }

#aip-root .aip-row{ display:flex;align-items:flex-start;gap:8px;margin-bottom:11px; }
#aip-root .aip-row-user{ justify-content:flex-end; }
#aip-root .aip-dot{
  flex:0 0 auto;width:26px;height:26px;border-radius:50%;
  display:grid;place-items:center;font-size:11px;font-weight:700;color:#04222E;
  background:linear-gradient(150deg,#7FE3F5,#22D3EE);
  box-shadow:0 0 12px rgba(34,211,238,.35);
  margin-top:2px;letter-spacing:0;
}
#aip-root .aip-bubble{
  max-width:80%;
  padding:9px 13px;
  border-radius:12px 12px 12px 4px;
  font-size:13.5px;line-height:1.66;
  color:#D8ECFA;
  background:linear-gradient(160deg,rgba(21,48,80,.94),rgba(12,30,52,.94));
  border:1px solid rgba(56,189,248,.22);
  box-shadow:0 4px 16px rgba(0,0,0,.28);
  word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;
}
#aip-root .aip-bubble.has-table{ max-width:100%; }
#aip-root .aip-row-user .aip-bubble{
  border-radius:12px 12px 4px 12px;
  color:#04202E;font-weight:600;
  background:linear-gradient(160deg,#5FD8EE,#16A5C6);
  border-color:rgba(127,227,245,.75);
  box-shadow:0 5px 18px rgba(34,211,238,.28);
  max-width:78%;
}
#aip-root .aip-bubble p{ margin:0 0 7px; }
#aip-root .aip-bubble p:last-child{ margin-bottom:0; }
#aip-root .aip-bubble strong{ color:#7FE3F5;font-weight:700; }
#aip-root .aip-row-user .aip-bubble strong{ color:#03303F; }
#aip-root .aip-bubble code{
  font-family:Consolas,"Courier New",monospace;font-size:12.5px;
  padding:1px 5px;border-radius:4px;
  background:rgba(34,211,238,.14);color:#9FE9F8;
  border:1px solid rgba(34,211,238,.22);
}
#aip-root .aip-bubble ul.aip-ul{ margin:2px 0 7px;padding-left:2px;list-style:none; }
#aip-root .aip-bubble ul.aip-ul:last-child{ margin-bottom:0; }
#aip-root .aip-bubble ul.aip-ul li{
  position:relative;padding-left:14px;margin-bottom:3px;line-height:1.6;
}
#aip-root .aip-bubble ul.aip-ul li::before{
  content:"";position:absolute;left:2px;top:9px;
  width:5px;height:5px;border-radius:50%;
  background:#22D3EE;box-shadow:0 0 7px rgba(34,211,238,.7);
}
#aip-root .aip-tablewrap{
  margin:7px 0 4px;overflow-x:auto;border-radius:8px;
  border:1px solid rgba(56,189,248,.20);
  scrollbar-width:thin;
}
#aip-root .aip-tablewrap::-webkit-scrollbar{ height:5px; }
#aip-root .aip-tablewrap::-webkit-scrollbar-thumb{ background:rgba(34,211,238,.32);border-radius:3px; }
#aip-root table.aip-table{ border-collapse:collapse;width:100%;font-size:12px; }
#aip-root table.aip-table th{
  padding:5px 7px;text-align:left;white-space:nowrap;
  color:#9FE0F2;font-weight:700;letter-spacing:.3px;
  background:rgba(34,211,238,.10);
  border-bottom:1px solid rgba(56,189,248,.28);
}
#aip-root table.aip-table td{
  padding:5px 7px;white-space:normal;word-break:break-word;color:#CFE9FA;
  border-bottom:1px dashed rgba(56,189,248,.14);
  line-height:1.45;
}
#aip-root table.aip-table tr:last-child td{ border-bottom:0; }
#aip-root table.aip-table tbody tr:nth-child(even) td{ background:rgba(56,189,248,.05); }

/* 打字指示器 */
#aip-root .aip-typing{
  display:flex;align-items:center;gap:5px;
  padding:12px 14px;
}
#aip-root .aip-typing i{
  width:7px;height:7px;border-radius:50%;background:#5FD8EE;display:block;
  animation:aip-bounce 1.15s ease-in-out infinite;
}
#aip-root .aip-typing i:nth-child(2){ animation-delay:.15s; }
#aip-root .aip-typing i:nth-child(3){ animation-delay:.30s; }
@keyframes aip-bounce{
  0%,60%,100%{ opacity:.3;transform:translateY(0); }
  30%        { opacity:1;transform:translateY(-5px); }
}

/* 快捷问题 */
#aip-root .aip-quick{ display:flex;flex-direction:column;gap:8px;margin:2px 0 4px; }
#aip-root .aip-qbtn{
  display:block;width:100%;text-align:left;
  padding:9px 12px;border-radius:10px;
  font-size:13px;line-height:1.45;color:#BFE6F7;
  background:rgba(34,211,238,.07);
  border:1px solid rgba(34,211,238,.28);
  transition:background .16s,border-color .16s,transform .16s,color .16s;
}
#aip-root .aip-qbtn:hover{
  background:rgba(34,211,238,.17);border-color:rgba(34,211,238,.62);
  color:#EAF6FF;transform:translateX(3px);
}
#aip-root .aip-qbtn span{ color:#22D3EE;margin-right:7px;font-weight:700; }

/* ---- 输入区 ---- */
#aip-root .aip-inputwrap{
  flex:0 0 auto;display:flex;align-items:flex-end;gap:8px;
  padding:10px 12px 4px;
  border-top:1px solid rgba(56,189,248,.14);
  background:linear-gradient(180deg,rgba(8,22,42,.30),rgba(8,22,42,.70));
}
#aip-root textarea.aip-input{
  flex:1 1 auto;min-width:0;
  min-height:38px;max-height:78px;
  padding:8px 12px;margin:0;resize:none;
  font-family:inherit;font-size:13.5px;line-height:20px;color:#E4F3FF;
  background:rgba(8,22,42,.88);
  border:1px solid rgba(56,189,248,.26);
  border-radius:11px;outline:none;overflow-y:auto;
  transition:border-color .16s,box-shadow .16s;
  scrollbar-width:thin;
}
#aip-root textarea.aip-input:focus{
  border-color:rgba(34,211,238,.65);
  box-shadow:0 0 0 3px rgba(34,211,238,.13);
}
#aip-root textarea.aip-input::placeholder{ color:#5F86A8; }
#aip-root textarea.aip-input:disabled{ opacity:.5;cursor:not-allowed; }
#aip-root textarea.aip-input::-webkit-scrollbar{ width:5px; }
#aip-root textarea.aip-input::-webkit-scrollbar-thumb{ background:rgba(34,211,238,.3);border-radius:3px; }
#aip-root .aip-send{
  flex:0 0 auto;width:44px;height:38px;border-radius:11px;
  display:grid;place-items:center;
  color:#04202E;
  background:linear-gradient(160deg,#5FD8EE,#0E7490);
  box-shadow:0 5px 16px rgba(34,211,238,.30);
  transition:filter .16s,transform .16s,opacity .16s;
}
#aip-root .aip-send svg{ width:19px;height:19px; }
#aip-root .aip-send:hover{ filter:brightness(1.12);transform:translateY(-1px); }
#aip-root .aip-send:disabled{ opacity:.42;cursor:not-allowed;filter:none;transform:none;box-shadow:none; }

/* ---- 输入框下方提示行 ---- */
#aip-root .aip-hint{
  flex:0 0 auto;min-height:20px;
  padding:0 14px 9px;
  font-size:11.5px;line-height:1.5;letter-spacing:.3px;
  color:#5F86A8;
}
#aip-root .aip-hint.is-warn{ color:#E9B45C; }
#aip-root .aip-hint b{ color:#9FD8EC;font-weight:700; }

/* ==========================================================================
   三、语音：播报开关 / 麦克风 / 音色选择
   ========================================================================== */

/* ---- 顶部喇叭按钮 ---- */
#aip-root .aip-iconbtn.aip-vsound.is-on{
  color:#7FE3F5;
  background:rgba(34,211,238,.16);
  border-color:rgba(34,211,238,.45);
}
#aip-root .aip-iconbtn.aip-vsound.is-speaking{
  color:#EAF6FF;
  border-color:rgba(34,211,238,.85);
  animation:aip-vsound 1.05s ease-in-out infinite;
}
@keyframes aip-vsound{
  0%,100%{ box-shadow:0 0 0 0 rgba(34,211,238,.36); }
  50%    { box-shadow:0 0 0 5px rgba(34,211,238,0); }
}

/* ---- 麦克风按钮 ---- */
#aip-root .aip-mic{
  flex:0 0 auto;width:38px;height:38px;border-radius:11px;
  display:grid;place-items:center;color:#9DC2DD;
  background:rgba(56,189,248,.08);
  border:1px solid rgba(56,189,248,.24);
  transition:background .16s,color .16s,border-color .16s,transform .16s;
}
#aip-root .aip-mic svg{ width:18px;height:18px; }
#aip-root .aip-mic:hover{
  color:#EAF6FF;background:rgba(34,211,238,.20);
  border-color:rgba(34,211,238,.55);transform:translateY(-1px);
}
#aip-root .aip-mic.is-na{ opacity:.42;cursor:not-allowed;color:#87A3BB;background:rgba(56,189,248,.04);border-color:rgba(56,189,248,.14); }
#aip-root .aip-mic.is-na:hover{ transform:none;color:#87A3BB;background:rgba(56,189,248,.04);border-color:rgba(56,189,248,.14); }
#aip-root .aip-mic.is-rec{
  color:#FFFFFF;
  background:linear-gradient(160deg,#FF6B6B,#C81E1E);
  border-color:rgba(255,150,150,.85);
  animation:aip-rec 1.15s ease-in-out infinite;
}
@keyframes aip-rec{
  0%,100%{ box-shadow:0 0 0 0 rgba(239,68,68,.55); }
  50%    { box-shadow:0 0 0 7px rgba(239,68,68,0); }
}

/* 录音时小人嘴巴同步动，给出「我在听」的反馈 */
#aip-root.aip-rec .aip-mouth-idle{ opacity:0; }
#aip-root.aip-rec .aip-mouth-open{ opacity:1;animation:aip-talk .55s ease-in-out infinite alternate; }

/* ---- 语音状态条（输入框下方） ---- */
#aip-root .aip-voicebar{
  flex:0 0 auto;display:flex;align-items:center;gap:8px;
  padding:0 14px 6px;
  font-size:11.5px;letter-spacing:.3px;color:#7FA8C9;
}
#aip-root .aip-vb-state{
  flex:1 1 auto;min-width:0;
  display:inline-flex;align-items:center;gap:6px;
  overflow:hidden;white-space:nowrap;text-overflow:ellipsis;
}
#aip-root .aip-vb-name{ color:#9FD8EC;font-weight:700; }
#aip-root .aip-vb-dot{
  flex:0 0 auto;width:6px;height:6px;border-radius:50%;display:block;
  background:currentColor;box-shadow:0 0 7px currentColor;
}
#aip-root .aip-vb-dot.is-on{ color:#22C55E; }
#aip-root .aip-vb-dot.is-wait{ color:#F59E0B;animation:aip-pulse 1.2s ease-in-out infinite; }
#aip-root .aip-vb-dot.is-off{ color:#87A3BB;box-shadow:none; }
#aip-root .aip-vb-dot.is-live{ color:#22D3EE;animation:aip-pulse .8s ease-in-out infinite; }
#aip-root .aip-vb-pick{
  flex:0 0 auto;padding:2px 9px;border-radius:7px;
  font-size:11px;color:#9FD8EC;
  background:rgba(56,189,248,.09);
  border:1px solid rgba(56,189,248,.24);
  transition:background .16s,color .16s,border-color .16s;
}
#aip-root .aip-vb-pick:hover{ color:#EAF6FF;background:rgba(34,211,238,.20);border-color:rgba(34,211,238,.55); }

/* ---- 音色选择浮层 ---- */
#aip-root .aip-vlist{
  position:absolute;left:12px;right:12px;bottom:104px;z-index:5;
  max-height:262px;overflow-y:auto;
  padding:7px;border-radius:12px;
  background:linear-gradient(160deg,rgba(17,40,68,.985),rgba(7,20,38,.985));
  border:1px solid rgba(34,211,238,.34);
  box-shadow:0 -12px 34px rgba(0,0,0,.5),0 0 26px rgba(34,211,238,.10);
  opacity:0;visibility:hidden;transform:translateY(8px);
  transition:opacity .18s ease,transform .2s ease,visibility .2s;
  scrollbar-width:thin;
}
#aip-root .aip-vlist.is-open{ opacity:1;visibility:visible;transform:none; }
#aip-root .aip-vlist::-webkit-scrollbar{ width:5px; }
#aip-root .aip-vlist::-webkit-scrollbar-thumb{ background:rgba(34,211,238,.30);border-radius:3px; }
#aip-root .aip-vlist-head{ padding:3px 6px 7px;font-size:11.5px;color:#7FA8C9;letter-spacing:.5px; }
#aip-root .aip-vitem{
  display:block;width:100%;text-align:left;
  padding:7px 9px;margin-bottom:4px;border-radius:9px;
  border:1px solid transparent;background:rgba(56,189,248,.05);
  transition:background .14s,border-color .14s,transform .14s;
}
#aip-root .aip-vitem:hover{ background:rgba(34,211,238,.15);border-color:rgba(34,211,238,.45);transform:translateX(2px); }
#aip-root .aip-vitem.is-cur{ background:rgba(34,211,238,.18);border-color:rgba(34,211,238,.62); }
#aip-root .aip-vitem-l{ display:block;font-size:13px;color:#E4F3FF;font-weight:700; }
#aip-root .aip-vitem.is-cur .aip-vitem-l{ color:#7FE3F5; }
#aip-root .aip-vitem-n{ display:block;font-size:11px;color:#7FA8C9;margin-top:1px;line-height:1.4; }
#aip-root .aip-vlist-foot{ padding:5px 7px 2px;font-size:10.5px;color:#5F86A8;line-height:1.5; }

/* 播报用的 <audio> 挂在面板里（隐藏），方便排查时在 Elements 里直接看到 */
#aip-root audio.aip-audio{ display:none; }

/* 宽屏适配：视口高度不足时压缩抽屉 */
@media (max-height:760px){
  #aip-root .aip-drawer{ height:auto;bottom:22px; }
  #aip-root .aip-msgs{ max-height:300px; }
  #aip-root .aip-vlist{ max-height:180px;bottom:98px; }
}
