css
/* ============ SUGAR·派单终端 主题CSS ============ */
ai{
  --bg0:#0a0612; --bg1:#160a24; --bg2:#1f0f36;
  --ink:#f0e6ff; --ink2:#c9b8e8; --ink3:#8a7aa8;
  --pink:#ff3d8b; --mag:#c026d3; --vio:#7c3aed;
  --gold:#f4c95d; --gold2:#e8a94a;
  --cyan:#5eead4; --red:#f43f5e;
  --ok:#4ade80; --warn:#fbbf24;
  --line:linear-gradient(90deg,transparent,#c026d3 30%,#ff3d8b 70%,transparent);
  --card:linear-gradient(145deg,rgba(31,15,54,.9),rgba(22,10,36,.95));
  --neon:0 0 12px rgba(192,38,211,.4),0 0 24px rgba(255,61,139,.2);
  display:block;
  background:
    radial-gradient(ellipse at top left,rgba(124,58,237,.15),transparent 50%),
    radial-gradient(ellipse at bottom right,rgba(255,61,139,.12),transparent 50%),
    linear-gradient(160deg,#0a0612 0%,#160a24 100%);
  background-image:
    radial-gradient(ellipse at top left,rgba(124,58,237,.15),transparent 50%),
    radial-gradient(ellipse at bottom right,rgba(255,61,139,.12),transparent 50%),
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24'><circle cx='1' cy='1' r='.6' fill='%23c026d3' opacity='.15'/></svg>"),
    linear-gradient(160deg,#0a0612 0%,#160a24 100%);
  color:var(--ink);
  padding:14px 12px;
  border-radius:18px;
  font:14px/1.7 -apple-system,"PingFang SC","Microsoft YaHei",sans-serif;
  border:1px solid rgba(192,38,211,.3);
  box-shadow:var(--neon),inset 0 0 60px rgba(124,58,237,.08);
  position:relative;
  overflow:hidden;
  max-width:100%;
}
ai::before{
  content:"";position:absolute;top:0;left:0;right:0;height:2px;
  background:var(--line);
  animation:scan 4s linear infinite;
}
@keyframes scan{0%{opacity:.3}50%{opacity:1}100%{opacity:.3}}
/* ===== 顶部终端条 ===== */
ai top{
  display:flex;align-items:center;gap:8px;
  padding:8px 12px;margin-bottom:10px;
  background:linear-gradient(90deg,rgba(124,58,237,.2),rgba(255,61,139,.15),rgba(124,58,237,.2));
  border:1px solid rgba(244,201,93,.35);
  border-radius:10px;
  font-size:13px;
  position:relative;
}
ai top ic{font-size:16px;filter:drop-shadow(0 0 4px #ff3d8b);}
ai top ttl{
  flex:1;font-weight:700;letter-spacing:2px;
  background:linear-gradient(90deg,#f4c95d,#ff3d8b,#c026d3);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
ai top sig{color:var(--ok);font-size:10px;letter-spacing:2px;animation:blink 1.5s infinite;}
@keyframes blink{50%{opacity:.4}}
/* ===== details 卡容器 ===== */
ai details{
  margin:10px 0;
  background:var(--card);
  border:1px solid rgba(192,38,211,.25);
  border-radius:14px;
  overflow:hidden;
  position:relative;
}
ai details::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(180deg,#f4c95d,#ff3d8b,#c026d3);
}
ai details summary{
  padding:10px 14px 10px 18px;
  font-weight:700;font-size:14px;
  cursor:pointer;
  background:linear-gradient(90deg,rgba(255,61,139,.12),transparent);
  color:var(--gold);
  letter-spacing:1px;
  list-style:none;
  border-bottom:1px dashed rgba(244,201,93,.25);
  transition:.3s;
}
ai details summary::-webkit-details-marker{display:none}
ai details summary::after{
  content:"▾";float:right;color:var(--pink);
  transition:transform .3s;
}
ai details[open] summary::after{transform:rotate(180deg)}
ai details summary:hover{background:linear-gradient(90deg,rgba(255,61,139,.25),rgba(192,38,211,.1));}
ai details>*:not(summary){padding:12px 14px;}
/* ===== 当前情况 4宫格 ===== */
ai grid.g4{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
ai grid.g4 cell{
  display:flex;flex-direction:column;gap:2px;
  padding:8px 10px;
  background:linear-gradient(135deg,rgba(124,58,237,.15),rgba(22,10,36,.6));
  border:1px solid rgba(192,38,211,.2);
  border-radius:8px;
}
ai cell lb{font-size:11px;color:var(--ink3);letter-spacing:1px;}
ai cell vl{font-size:13px;color:var(--ink);font-weight:600;}
ai dot{
  display:inline-block;width:8px;height:8px;border-radius:50%;
  background:var(--ok);margin-right:4px;
  box-shadow:0 0 8px currentColor;
  animation:pulse 2s infinite;
}
ai dot[st="offline"]{background:var(--ink3)}
ai dot[st="dnd"]{background:var(--red)}
@keyframes pulse{50%{opacity:.5}}
/* ===== 正文区 ===== */
ai art{
  padding:14px 16px !important;
  background:
    linear-gradient(180deg,rgba(22,10,36,.7),rgba(10,6,18,.8)),
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='60' height='60'><path d='M0 30h60M30 0v60' stroke='%23c026d3' stroke-width='.3' opacity='.15'/></svg>");
  border:1px solid rgba(244,201,93,.2);
  border-radius:14px;
  margin:10px 0;
  position:relative;
}
ai art::before{
  content:"❦";
  position:absolute;top:-10px;left:20px;
  background:var(--bg1);padding:0 8px;
  color:var(--gold);font-size:14px;
}
ai art p{
  margin:0 0 12px;text-indent:2em;
  color:var(--ink);line-height:1.9;
  font-size:14.5px;
}
ai art p:last-child{margin-bottom:0}
/* ===== 对白与内心 差异化 ===== */
ai q{
  font-family:"KaiTi","STKaiti",serif;
  font-style:normal;font-weight:500;
  padding:1px 6px;border-radius:4px;
  margin:0 2px;
  quotes:"「" "」";
}
ai q::before{content:open-quote}
ai q::after{content:close-quote}
ai q.me{
  color:#ffd6a5;
  background:linear-gradient(90deg,rgba(244,201,93,.15),rgba(244,201,93,.05));
  border-bottom:1px dotted var(--gold);
}
ai q.npc{
  color:#ffb3d9;
  background:linear-gradient(90deg,rgba(255,61,139,.15),rgba(255,61,139,.05));
  border-bottom:1px dotted var(--pink);
}
ai i{
  font-family:"FangSong","STFangsong",serif;
  font-style:italic;
  padding:0 4px;
  opacity:.9;
}
ai art i{
  color:#b8a5d9;
  background:linear-gradient(90deg,rgba(124,58,237,.1),transparent);
  border-left:2px solid var(--vio);
  padding-left:6px;margin:0 2px;
}
ai art i.me{color:#e8d4a0;border-left-color:var(--gold);}
ai art i.npc{color:#e8a5c4;border-left-color:var(--mag);}
/* ===== 主角 hero 卡 ===== */
ai hero,ai npc,ai ord,ai harem,ai shop,ai msg,ai mem,ai act{
  display:block;
}
ai row{
  display:flex;align-items:baseline;gap:10px;
  padding-bottom:8px;
  border-bottom:1px dashed rgba(244,201,93,.3);
  margin-bottom:10px;
}
ai nm{
  font-size:18px;font-weight:800;
  background:linear-gradient(90deg,#f4c95d,#ff3d8b);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  letter-spacing:1px;
}
ai age{font-size:12px;color:var(--ink3);}
/* ===== 等级徽章 lv0-lv4 ===== */
ai badge{
  display:inline-block;
  padding:4px 12px;margin:4px 0 10px;
  font-size:12px;font-weight:700;letter-spacing:1px;
  border-radius:20px;
  position:relative;
}
ai badge[lv="0"]{
  background:linear-gradient(135deg,#4a4458,#6b5f7d);
  color:#d4c9e8;border:1px solid #8b7fa3;
}
ai badge[lv="1"]{
  background:linear-gradient(135deg,#8b6f47,#c9924a);
  color:#fff5e0;border:1px solid #d4a862;
  box-shadow:0 0 8px rgba(201,146,74,.4);
}
ai badge[lv="2"]{
  background:linear-gradient(135deg,#c026d3,#7c3aed);
  color:#fff;border:1px solid #e879f9;
  box-shadow:0 0 12px rgba(192,38,211,.5);
}
ai badge[lv="3"]{
  background:linear-gradient(135deg,#f4c95d,#ff3d8b,#c026d3);
  color:#fff;border:1px solid #ffd700;
  box-shadow:0 0 16px rgba(244,201,93,.6),inset 0 0 8px rgba(255,255,255,.3);
}
ai badge[lv="3"]::before{content:"♛ ";color:#fff}
ai badge[lv="4"]{
  background:linear-gradient(135deg,#f43f5e,#f4c95d,#4ade80,#5eead4,#c026d3);
  background-size:300% 300%;
  color:#fff;border:1px solid #fff;
  box-shadow:0 0 20px rgba(255,61,139,.8),0 0 40px rgba(192,38,211,.4);
  animation:rainbow 3s ease infinite,glow 1.5s ease-in-out infinite;
  text-shadow:0 0 8px rgba(0,0,0,.5);
}
ai badge[lv="4"]::before{content:"♛✧ ";}
ai badge[lv="4"]::after{content:" ✧";}
@keyframes rainbow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes glow{50%{filter:brightness(1.2)}}
ai look{
  display:block;padding:8px 10px;margin:6px 0;
  background:rgba(124,58,237,.1);border-left:3px solid var(--vio);
  border-radius:0 6px 6px 0;
  font-size:13px;color:var(--ink2);line-height:1.7;
}
/* ===== blk 分区块 ===== */
ai blk{
  display:block;margin:8px 0;
  padding:8px 10px;
  background:linear-gradient(135deg,rgba(22,10,36,.6),rgba(31,15,54,.4));
  border:1px solid rgba(192,38,211,.2);
  border-radius:8px;
  position:relative;
}
ai blk[t]::before{
  content:attr(t);
  display:inline-block;
  font-size:11px;font-weight:700;letter-spacing:1px;
  color:var(--gold);
  padding:2px 8px;margin-bottom:6px;
  background:rgba(244,201,93,.1);
  border:1px solid rgba(244,201,93,.3);
  border-radius:4px;
}
ai blk d{
  display:block;font-size:13px;color:var(--ink2);line-height:1.7;
  padding:2px 0;
}
ai blk.think{background:linear-gradient(135deg,rgba(124,58,237,.15),rgba(255,61,139,.08));}
ai blk.think i{
  color:#e8a5c4;font-style:italic;
  text-shadow:0 0 6px rgba(255,61,139,.3);
}
ai blk.drama{
  background:linear-gradient(135deg,rgba(244,63,94,.12),rgba(192,38,211,.08));
  border-color:rgba(244,63,94,.3);
}
/* ===== 进度条 ===== */
ai stat{display:flex;flex-direction:column;gap:8px;margin:10px 0;}
ai bar{
  display:grid;grid-template-columns:60px 1fr auto;
  align-items:center;gap:8px;
  font-size:12px;
}
ai bar::before{
  content:attr(t);
  color:var(--ink3);font-size:11px;letter-spacing:1px;
}
ai bar pr{
  display:block;height:8px;
  background:rgba(10,6,18,.8);
  border:1px solid rgba(192,38,211,.3);
  border-radius:4px;
  overflow:hidden;
  position:relative;
}
ai bar pr::after{
  content:"";position:absolute;left:0;top:0;bottom:0;
  width:var(--w,50%);
  background:linear-gradient(90deg,#c026d3,#ff3d8b,#f4c95d);
  box-shadow:0 0 8px rgba(255,61,139,.6);
}
ai bar[lv] pr::after{background:linear-gradient(90deg,#7c3aed,#c026d3,#ff3d8b);}
ai bar.mood pr::after{background:linear-gradient(90deg,#f43f5e,#fbbf24,#4ade80);}
ai bar n{color:var(--ink);font-size:11px;font-family:monospace;}
/* v 属性映射进度条宽度 - 关键百分比档 */
ai pr[v="0"]{--w:0%}ai pr[v="10"]{--w:10%}ai pr[v="20"]{--w:20%}
ai pr[v="30"]{--w:30%}ai pr[v="40"]{--w:40%}ai pr[v="50"]{--w:50%}
ai pr[v="60"]{--w:60%}ai pr[v="70"]{--w:70%}ai pr[v="80"]{--w:80%}
ai pr[v="90"]{--w:90%}ai pr[v="100"]{--w:100%}
ai pr[v*="15"]{--w:15%}ai pr[v*="25"]{--w:25%}ai pr[v*="35"]{--w:35%}
ai pr[v*="45"]{--w:45%}ai pr[v*="55"]{--w:55%}ai pr[v*="65"]{--w:65%}
ai pr[v*="75"]{--w:75%}ai pr[v*="85"]{--w:85%}ai pr[v*="95"]{--w:95%}
/* ===== kv 键值对网格 ===== */
ai kv{
  display:grid;grid-template-columns:repeat(2,1fr);
  gap:4px 12px;margin:8px 0;
  padding:8px 10px;
  background:rgba(10,6,18,.4);
  border-radius:8px;
  font-size:13px;
}
ai kv k{color:var(--ink3);font-size:12px;}
ai kv v{color:var(--ink);font-weight:600;text-align:right;}
/* ===== itm 通用条目 ===== */
ai itm{
  display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;
  padding:6px 10px;margin:4px 0;
  background:linear-gradient(90deg,rgba(124,58,237,.1),transparent);
  border-left:2px solid var(--mag);
  border-radius:0 6px 6px 0;
  font-size:13px;
  transition:.2s;
}
ai itm:hover{background:linear-gradient(90deg,rgba(255,61,139,.2),transparent);border-left-color:var(--pink);}
ai itm nm{font-size:13px;color:var(--gold);font-weight:700;letter-spacing:0;-webkit-text-fill-color:var(--gold);background:none;}
ai itm ef,ai itm d{color:var(--ink2);flex:1;font-size:12px;}
ai itm cnt{color:var(--pink);font-family:monospace;font-weight:700;}
ai itm px::before{content:"💎 ";}
ai itm px{color:var(--cyan);font-family:monospace;font-weight:700;font-size:12px;}
/* ===== NPC 标签 ===== */
ai tag{
  display:inline-block;
  padding:3px 10px;margin:2px 4px 2px 0;
  font-size:11px;font-weight:600;
  border-radius:12px;letter-spacing:.5px;
}
ai tag.job{background:rgba(94,234,212,.15);color:var(--cyan);border:1px solid rgba(94,234,212,.4);}
ai tag.cust{background:rgba(251,191,36,.15);color:var(--warn);border:1px solid rgba(251,191,36,.4);}
ai tag.ord{background:rgba(255,61,139,.15);color:var(--pink);border:1px solid rgba(255,61,139,.4);}
ai tag.ord[ol="special"]{background:rgba(124,58,237,.2);color:#c4b5fd;border-color:var(--vio);}
ai tag.ord[ol="ntr"]{background:rgba(244,63,94,.2);color:#fca5a5;border-color:var(--red);box-shadow:0 0 8px rgba(244,63,94,.4);}
ai tag.ord[ol="cross"]{
  background:linear-gradient(90deg,rgba(94,234,212,.2),rgba(192,38,211,.2));
  color:#fff;border-color:transparent;
  animation:tagshine 2s ease infinite;
}
@keyframes tagshine{50%{filter:brightness(1.3)}}
/* ===== 身体档案 anat ===== */
ai body.anat{
  display:grid;grid-template-columns:1fr;gap:6px;
  padding:10px;margin:8px 0;
  background:
    linear-gradient(135deg,rgba(255,61,139,.08),rgba(124,58,237,.08)),
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='40' height='40'><text x='20' y='28' text-anchor='middle' fill='%23ff3d8b' opacity='.06' font-size='24'>♡</text></svg>");
  border:1px solid rgba(255,61,139,.25);
  border-radius:10px;
}
ai part{
  display:grid;grid-template-columns:24px 60px 1fr;
  align-items:baseline;gap:6px;
  padding:4px 6px;
  border-bottom:1px dotted rgba(255,61,139,.2);
  font-size:12.5px;
}
ai part:last-child{border-bottom:none;}
ai part::before{content:attr(i);font-size:14px;}
ai part lb{color:var(--pink);font-weight:700;font-size:12px;}
ai part d{color:var(--ink2);line-height:1.6;}
/* ===== 订单 ===== */
ai oid{
  display:inline-block;
  font-family:monospace;font-size:15px;font-weight:800;
  color:var(--gold);
  padding:4px 12px;margin-bottom:8px;
  background:rgba(244,201,93,.1);
  border:1px dashed var(--gold);
  border-radius:6px;
  letter-spacing:2px;
}
ai match{
  display:grid;grid-template-columns:70px 1fr 50px;
  align-items:center;gap:8px;margin:8px 0;
  font-size:12px;
}
ai match n{color:var(--ink3);}
ai match pr{
  height:10px;background:rgba(10,6,18,.8);
  border:1px solid rgba(192,38,211,.3);
  border-radius:5px;overflow:hidden;position:relative;
}
ai match pr::after{
  content:"";position:absolute;left:0;top:0;bottom:0;
  width:var(--w,50%);
  background:linear-gradient(90deg,#5eead4,#f4c95d,#ff3d8b);
  box-shadow:0 0 10px rgba(255,61,139,.6);
}
ai match vl{color:var(--gold);font-weight:700;text-align:right;font-family:monospace;}
/* 服务阶段步骤条 */
ai phase{
  display:grid;grid-template-columns:repeat(5,1fr);
  gap:2px;margin:12px 0 8px;
  position:relative;
}
ai phase st{
  padding:6px 4px;font-size:11px;text-align:center;
  background:rgba(31,15,54,.6);color:var(--ink3);
  border:1px solid rgba(192,38,211,.2);
  border-radius:4px;
  position:relative;
}
ai phase[p="0"] st:nth-child(1),ai phase[p="1"] st:nth-child(-n+2),
ai phase[p="2"] st:nth-child(-n+3),ai phase[p="3"] st:nth-child(-n+4),
ai phase[p="4"] st:nth-child(-n+5){
  background:linear-gradient(135deg,#c026d3,#ff3d8b);
  color:#fff;font-weight:700;
  box-shadow:0 0 8px rgba(255,61,139,.4);
  border-color:var(--pink);
}
/* ===== 后宫 ===== */
ai harem blk.mem itm nm{color:var(--pink);-webkit-text-fill-color:var(--pink);}
/* ===== 商城 分区 ===== */
ai lvtip{
  display:block;text-align:center;
  font-size:12px;color:var(--gold);letter-spacing:2px;
  padding:6px;margin-bottom:8px;
  background:linear-gradient(90deg,transparent,rgba(244,201,93,.15),transparent);
  border-top:1px solid rgba(244,201,93,.3);
  border-bottom:1px solid rgba(244,201,93,.3);
}
ai zone{
  display:block;margin:10px 0;
  padding:8px 10px;
  background:linear-gradient(135deg,rgba(22,10,36,.6),rgba(10,6,18,.4));
  border-radius:10px;
  border-left:3px solid var(--vio);
}
ai zone[c="money"]{border-left-color:var(--gold);}
ai zone[c="drug"]{border-left-color:var(--pink);}
ai zone[c="base"]{border-left-color:var(--cyan);}
ai zone[c="cross"]{
  border-left-color:transparent;
  border-image:linear-gradient(180deg,#5eead4,#c026d3,#ff3d8b) 1;
  border-left-width:3px;border-left-style:solid;
}
ai zh{
  display:block;font-size:13px;font-weight:700;
  color:var(--gold);letter-spacing:1px;
  margin-bottom:6px;
}
ai tip{
  display:block;text-align:center;font-size:11px;
  color:var(--ink3);margin-top:8px;
  padding:4px;border-top:1px dashed rgba(192,38,211,.3);
}
/* ===== 客服消息 ===== */
ai bub{
  display:grid;grid-template-columns:36px 1fr;
  gap:8px;margin:10px 0;
  padding:8px 10px;
  border-radius:10px;
  position:relative;
}
ai bub[who="tian"]{
  background:linear-gradient(135deg,rgba(255,61,139,.15),rgba(192,38,211,.08));
  border:1px solid rgba(255,61,139,.3);
}
ai bub[who="ling"]{
  background:linear-gradient(135deg,rgba(30,41,59,.6),rgba(10,6,18,.6));
  border:1px solid rgba(94,234,212,.25);
}
ai bub av{
  width:32px;height:32px;
  display:flex;align-items:center;justify-content:center;
  font-size:20px;
  background:rgba(10,6,18,.6);
  border-radius:50%;
  grid-row:1/3;
}
ai bub[who="tian"] av{box-shadow:0 0 8px rgba(255,61,139,.5);}
ai bub[who="ling"] av{box-shadow:0 0 8px rgba(94,234,212,.4);filter:hue-rotate(-20deg);}
ai bub nm{
  font-size:12px;
  -webkit-text-fill-color:initial;background:none;
  letter-spacing:1px;
}
ai bub[who="tian"] nm{color:var(--pink);}
ai bub[who="ling"] nm{color:var(--cyan);opacity:.8;}
ai bub line{
  display:block;font-size:13px;line-height:1.6;
  color:var(--ink2);margin-top:2px;
}
ai bub[who="ling"] line{
  color:#94a3b8;font-style:italic;letter-spacing:1px;
  animation:fade 3s ease-in-out infinite;
}
@keyframes fade{50%{opacity:.5}}
ai board,ai alert{
  display:block;margin:10px 0;padding:8px 10px;
  border-radius:8px;
}
ai board{background:rgba(94,234,212,.08);border:1px dashed rgba(94,234,212,.3);}
ai board zh{color:var(--cyan);}
ai alert{
  background:linear-gradient(90deg,rgba(244,63,94,.15),rgba(251,191,36,.1));
  border:1px solid var(--red);
  box-shadow:0 0 12px rgba(244,63,94,.3);
  animation:warn 2s ease-in-out infinite;
}
ai alert zh{color:var(--red);}
ai alert line{color:#fca5a5;}
@keyframes warn{50%{box-shadow:0 0 20px rgba(244,63,94,.5);}}
ai board line,ai alert line{display:block;font-size:12.5px;line-height:1.7;padding:2px 0;}
/* ===== 记忆区 ===== */
ai mem cnt{
  display:block;text-align:right;
  font-size:11px;color:var(--ink3);
  padding:4px 8px;margin-bottom:6px;
  border-bottom:1px dashed rgba(192,38,211,.2);
  font-family:monospace;
}
ai mem itm{
  display:grid;grid-template-columns:30px 100px 1fr;
  gap:6px;align-items:baseline;
  font-size:12.5px;
}
ai mem itm t{color:var(--gold);font-weight:700;font-family:monospace;}
ai mem itm dt{color:var(--pink);font-size:11px;}
ai mem itm d{color:var(--ink2);line-height:1.6;}
ai mem.long itm t{color:var(--cyan);}
/* ===== 行动推荐 ===== */
ai act{display:grid;gap:6px;}
ai opt{
  display:block;
  padding:10px 14px 10px 42px;
  background:linear-gradient(90deg,rgba(124,58,237,.2),rgba(255,61,139,.08));
  border:1px solid rgba(192,38,211,.3);
  border-radius:8px;
  font-size:13.5px;color:var(--ink);
  position:relative;
  cursor:pointer;
  transition:.25s;
}
ai opt::before{
  content:attr(n);
  position:absolute;left:10px;top:50%;transform:translateY(-50%);
  width:24px;height:24px;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#f4c95d,#ff3d8b);
  color:#fff;font-weight:800;font-size:12px;
  border-radius:50%;
  box-shadow:0 0 8px rgba(255,61,139,.5);
}
ai opt:hover{
  background:linear-gradient(90deg,rgba(255,61,139,.35),rgba(244,201,93,.15));
  border-color:var(--gold);
  transform:translateX(4px);
  box-shadow:-4px 0 12px rgba(255,61,139,.3);
}
/* ===== 通用 strong 强调 ===== */
ai strong{color:var(--gold);font-weight:700;}
ai em{color:var(--pink);font-style:normal;}
ai ul,ai ol{margin:6px 0;padding-left:22px;}
ai li{margin:3px 0;color:var(--ink2);}
/* ===== 响应式 ===== */
@media(max-width:420px){
  ai{padding:10px 8px;font-size:13px;}
  ai grid.g4{grid-template-columns:1fr 1fr;}
  ai kv{grid-template-columns:1fr;}
  ai phase st{font-size:10px;padding:4px 2px;}
  ai mem itm{grid-template-columns:24px 80px 1fr;}
}