/* =========================================================
   斗罗大陆 · 聊天回复 CSS 重置版
   仅适配当前回复格式：世界态势 / 主角 / 战斗 / NPC / 记忆 / 行动
   无任务体系 / 无 quest / 无主线支线遗留
   ========================================================= */

/* ---------- 00 基础容器 ---------- */

ai {
  --dl-bg0: #050713;
  --dl-bg1: #0b1026;
  --dl-bg2: #141b3a;
  --dl-card: rgba(9, 13, 31, .78);
  --dl-card2: rgba(14, 18, 40, .72);
  --dl-line: rgba(237, 196, 105, .32);
  --dl-line-soft: rgba(237, 196, 105, .16);
  --dl-gold: #f0c46b;
  --dl-gold2: #a46e25;
  --dl-gold3: #ffe8a8;
  --dl-purple: #8f70ff;
  --dl-blue: #79d9ff;
  --dl-red: #ff4b60;
  --dl-green: #70ef9e;
  --dl-text: #f5ecd9;
  --dl-sub: #c4b9a6;
  --dl-muted: #8f97ad;
  --dl-radius-xl: 26px;
  --dl-radius-lg: 20px;
  --dl-radius-md: 14px;
  --dl-shadow: 0 20px 70px rgba(0, 0, 0, .48);
  --dl-glow-gold: 0 0 28px rgba(240, 196, 107, .16);
  --dl-glow-purple: 0 0 32px rgba(143, 112, 255, .18);

  display: block;
  width: min(1040px, 100%);
  margin: 18px auto;
  padding: 18px;
  color: var(--dl-text);
  font-family: "Noto Serif SC", "Microsoft YaHei", "PingFang SC", serif;
  background:
    radial-gradient(circle at 8% 0%, rgba(240, 196, 107, .20), transparent 28%),
    radial-gradient(circle at 92% 4%, rgba(143, 112, 255, .24), transparent 31%),
    radial-gradient(circle at 50% 105%, rgba(121, 217, 255, .10), transparent 36%),
    linear-gradient(145deg, var(--dl-bg0), var(--dl-bg2) 46%, #060711);
  border: 1px solid rgba(240, 196, 107, .48);
  border-radius: var(--dl-radius-xl);
  box-shadow:
    var(--dl-shadow),
    var(--dl-glow-purple),
    var(--dl-glow-gold),
    inset 0 0 0 1px rgba(255, 255, 255, .045);
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
}

ai *,
ai *::before,
ai *::after {
  box-sizing: border-box;
}

ai::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(115deg, transparent 0%, rgba(255, 229, 160, .065) 42%, transparent 64%),
    repeating-linear-gradient(
      0deg,
      rgba(255, 255, 255, .022) 0,
      rgba(255, 255, 255, .022) 1px,
      transparent 1px,
      transparent 6px
    );
  background-size: 520px 100%, 100% 6px;
  animation: dl-soul-sweep 9s linear infinite;
  opacity: .72;
}

ai::after {
  content: "DOULUO CONTINENT · SOUL ARCHIVE";
  position: absolute;
  right: 18px;
  top: 10px;
  color: rgba(240, 196, 107, .18);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .18em;
  pointer-events: none;
  white-space: nowrap;
}

@keyframes dl-soul-sweep {
  from { background-position: -420px 0, 0 0; }
  to { background-position: 520px 0, 0 0; }
}

/* ---------- 01 ai 属性主题 ---------- */

ai[danger="4"],
ai[danger="5"] {
  border-color: rgba(255, 75, 96, .58);
  box-shadow:
    var(--dl-shadow),
    0 0 34px rgba(255, 75, 96, .16),
    var(--dl-glow-purple),
    inset 0 0 0 1px rgba(255, 255, 255, .045);
}

ai[danger="4"] hd,
ai[danger="5"] hd {
  border-color: rgba(255, 75, 96, .50);
  background:
    linear-gradient(90deg, rgba(100, 20, 34, .84), rgba(10, 15, 36, .92), rgba(102, 65, 28, .76));
}

ai[theme="wuhun"] {
  --dl-purple: #9b7cff;
  --dl-gold: #f0c46b;
}

ai[theme="forest"] {
  --dl-purple: #64d98b;
  --dl-line: rgba(112, 239, 158, .30);
  --dl-line-soft: rgba(112, 239, 158, .15);
}

ai[theme="slaughter"] {
  --dl-purple: #ff4b60;
  --dl-line: rgba(255, 75, 96, .36);
  --dl-line-soft: rgba(255, 75, 96, .18);
}

/* ---------- 02 顶部状态栏 hd ---------- */

hd {
  display: block;
  position: relative;
  z-index: 1;
  margin: 0 0 16px;
  padding: 14px 18px;
  min-height: 48px;
  color: var(--dl-gold3);
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .075em;
  text-align: center;
  border: 1px solid rgba(240, 196, 107, .52);
  border-radius: 18px;
  background:
    linear-gradient(90deg, rgba(68, 43, 120, .82), rgba(10, 15, 36, .92), rgba(102, 65, 28, .76));
  box-shadow:
    0 0 20px rgba(143, 112, 255, .18),
    inset 0 0 22px rgba(240, 196, 107, .085);
  overflow: hidden;
}

hd::before,
hd::after {
  color: var(--dl-gold);
  text-shadow: 0 0 12px rgba(240, 196, 107, .5);
}

hd::before {
  content: "✦";
  margin-right: 12px;
}

hd::after {
  content: "✦";
  margin-left: 12px;
}

/* ---------- 03 正文 text ---------- */

text {
  display: block;
  position: relative;
  z-index: 1;
  margin: 0 0 16px;
  padding: 18px;
  border: 1px solid rgba(143, 112, 255, .34);
  border-radius: 22px;
  background:
    radial-gradient(circle at 0% 0%, rgba(240, 196, 107, .10), transparent 32%),
    radial-gradient(circle at 100% 100%, rgba(143, 112, 255, .12), transparent 34%),
    linear-gradient(145deg, rgba(5, 8, 21, .78), rgba(14, 18, 42, .62));
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, .035),
    inset 0 0 30px rgba(143, 112, 255, .10);
  overflow: hidden;
}

text::before {
  content: "剧情记录";
  display: inline-flex;
  align-items: center;
  width: max-content;
  margin: 0 0 13px;
  padding: 4px 12px;
  color: #1a1106;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .14em;
  border-radius: 999px;
  background: linear-gradient(135deg, #ffe8aa, #b77a2d);
  box-shadow: 0 0 16px rgba(240, 196, 107, .23);
}

text p {
  margin: 0 0 14px;
  padding: 14px 16px;
  color: #eadfca;
  font-size: 15.5px;
  line-height: 2;
  text-indent: 2em;
  border-left: 3px solid rgba(240, 196, 107, .42);
  border-radius: 16px;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, .036), rgba(255, 255, 255, .018));
  box-shadow: inset 0 0 18px rgba(255, 255, 255, .018);
  transition: background .18s ease, border-color .18s ease;
}

text p:hover {
  background: rgba(255, 255, 255, .05);
  border-left-color: rgba(255, 229, 160, .78);
}

text p:last-child {
  margin-bottom: 0;
}

text strong,
text b,
mark {
  color: #ffe8aa;
  font-weight: 900;
}

mark {
  padding: 0 4px;
  color: #221604;
  border-radius: 6px;
  background: linear-gradient(135deg, #ffe8aa, #c88b35);
}

/* ---------- 04 对话 say ---------- */

say {
  display: block;
  position: relative;
  max-width: 82%;
  margin: 12px 0;
  padding: 12px 14px;
  color: #f6ecda;
  font-size: 14.5px;
  line-height: 1.82;
  text-indent: 0;
  border: 1px solid rgba(143, 112, 255, .36);
  border-radius: 18px;
  background:
    radial-gradient(circle at 0% 0%, rgba(143, 112, 255, .16), transparent 38%),
    linear-gradient(135deg, rgba(43, 34, 86, .76), rgba(9, 13, 31, .70));
  box-shadow:
    0 8px 22px rgba(0, 0, 0, .22),
    inset 0 0 18px rgba(143, 112, 255, .08);
  animation: dl-bubble-in .32s ease both;
}

@keyframes dl-bubble-in {
  from { opacity: 0; transform: translateY(8px) scale(.985); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

say::before {
  content: attr(who);
  display: block;
  width: max-content;
  max-width: 100%;
  margin: 0 0 6px;
  padding: 2px 9px;
  color: #1b1105;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.5;
  border-radius: 999px;
  background: linear-gradient(135deg, #ffe7a8, #b77a2d);
  box-shadow: 0 0 12px rgba(240, 196, 107, .18);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

say::after {
  content: "";
  position: absolute;
  left: 16px;
  bottom: -7px;
  width: 14px;
  height: 14px;
  transform: rotate(45deg);
  background: rgba(18, 22, 50, .88);
  border-right: 1px solid rgba(143, 112, 255, .28);
  border-bottom: 1px solid rgba(143, 112, 255, .28);
}

say[side="right"] {
  margin-left: auto;
  border-color: rgba(240, 196, 107, .36);
  background:
    radial-gradient(circle at 100% 0%, rgba(240, 196, 107, .13), transparent 38%),
    linear-gradient(135deg, rgba(84, 52, 25, .70), rgba(9, 13, 31, .72));
}

say[side="right"]::after {
  left: auto;
  right: 16px;
  border-right: 0;
  border-bottom: 0;
  border-left: 1px solid rgba(240, 196, 107, .28);
  border-top: 1px solid rgba(240, 196, 107, .28);
}

say[mood="calm"] {
  border-color: rgba(121, 217, 255, .34);
}

say[mood="calm"]::before {
  background: linear-gradient(135deg, #bdeeff, #4d94c8);
}

say[mood="warn"] {
  color: #ffe2c0;
  border-color: rgba(255, 166, 69, .56);
  box-shadow:
    0 0 18px rgba(255, 166, 69, .10),
    inset 0 0 18px rgba(255, 166, 69, .08);
}

say[mood="warn"]::before {
  background: linear-gradient(135deg, #ffd39a, #c06b22);
}

say[mood="angry"] {
  color: #ffd4d4;
  border-color: rgba(255, 75, 96, .62);
  background:
    radial-gradient(circle at 0% 0%, rgba(255, 75, 96, .16), transparent 38%),
    linear-gradient(135deg, rgba(90, 20, 32, .74), rgba(9, 13, 31, .72));
}

say[mood="angry"]::before {
  color: #fff1f1;
  background: linear-gradient(135deg, #ff9aa6, #a71930);
}

say[mood="secret"] {
  color: #e7ddff;
  border-color: rgba(166, 126, 255, .56);
  background:
    radial-gradient(circle at 0% 0%, rgba(166, 126, 255, .20), transparent 38%),
    linear-gradient(135deg, rgba(45, 29, 86, .78), rgba(9, 13, 31, .74));
}

say[mood="secret"]::before {
  color: #fff;
  background: linear-gradient(135deg, #c9b8ff, #6745d0);
}

say[mood="hurt"] {
  color: #ffe1e1;
  border-color: rgba(255, 120, 120, .48);
}

say[mood="hurt"]::before {
  color: #fff;
  background: linear-gradient(135deg, #ffb2b2, #8f2832);
}

say[mood="cold"] {
  color: #dff4ff;
  border-color: rgba(121, 217, 255, .48);
  background:
    radial-gradient(circle at 0% 0%, rgba(121, 217, 255, .14), transparent 38%),
    linear-gradient(135deg, rgba(23, 52, 76, .72), rgba(9, 13, 31, .74));
}

/* ---------- 05 aside / inner ---------- */

aside,
inner {
  display: block;
  margin: 12px 0;
  padding: 11px 14px;
  font-size: 14px;
  line-height: 1.78;
  text-indent: 0;
  border-radius: 15px;
}

aside {
  color: #d9defa;
  border-left: 3px solid rgba(143, 112, 255, .72);
  background:
    linear-gradient(90deg, rgba(86, 67, 170, .18), rgba(255, 255, 255, .018));
}

aside::before {
  content: "旁白";
  display: inline-flex;
  margin-right: 8px;
  padding: 2px 8px;
  color: #e9e2ff;
  font-size: 12px;
  font-weight: 900;
  border: 1px solid rgba(143, 112, 255, .34);
  border-radius: 999px;
  background: rgba(143, 112, 255, .22);
}

inner {
  color: #f0e5ff;
  border: 1px dashed rgba(166, 126, 255, .40);
  background:
    radial-gradient(circle at 0% 0%, rgba(166, 126, 255, .14), transparent 36%),
    rgba(35, 25, 67, .36);
}

inner::before {
  content: "心声";
  display: inline-flex;
  margin-right: 8px;
  padding: 2px 8px;
  color: #fff;
  font-size: 12px;
  font-weight: 900;
  border-radius: 999px;
  background: linear-gradient(135deg, #c9b8ff, #6745d0);
}

/* ---------- 06 事件 event ---------- */

event {
  display: block;
  position: relative;
  margin: 12px 0;
  padding: 12px 14px 12px 52px;
  color: #f3ead8;
  font-size: 14.5px;
  line-height: 1.76;
  border: 1px solid rgba(240, 196, 107, .28);
  border-radius: 16px;
  background:
    linear-gradient(90deg, rgba(164, 110, 37, .18), rgba(143, 112, 255, .08));
  box-shadow: inset 0 0 16px rgba(240, 196, 107, .06);
  overflow: hidden;
}

event::before {
  content: "事件";
  position: absolute;
  left: 12px;
  top: 12px;
  padding: 2px 8px;
  color: #1a1106;
  font-size: 12px;
  font-weight: 900;
  border-radius: 999px;
  background: var(--event-badge, linear-gradient(135deg, #ffe7a8, #b77a2d));
}

event::after {
  content: "";
  position: absolute;
  left: 27px;
  top: 38px;
  bottom: 10px;
  width: 1px;
  background: rgba(240, 196, 107, .22);
}

event[type="danger"] {
  color: #ffd7d7;
  border-color: rgba(255, 75, 96, .52);
  background:
    radial-gradient(circle at 0% 50%, rgba(255, 75, 96, .20), transparent 34%),
    linear-gradient(90deg, rgba(120, 18, 32, .30), rgba(255, 255, 255, .018));
  --event-badge: linear-gradient(135deg, #ff9aa6, #a71930);
  animation: dl-danger-pulse 2s ease-in-out infinite;
}

event[type="danger"]::before {
  content: "危机";
  color: #fff2f2;
}

@keyframes dl-danger-pulse {
  0%, 100% { box-shadow: inset 0 0 16px rgba(255, 75, 96, .05), 0 0 0 rgba(255, 75, 96, 0); }
  50% { box-shadow: inset 0 0 18px rgba(255, 75, 96, .10), 0 0 18px rgba(255, 75, 96, .16); }
}

event[type="secret"] {
  color: #e7ddff;
  border-color: rgba(166, 126, 255, .46);
  background:
    radial-gradient(circle at 0% 50%, rgba(166, 126, 255, .18), transparent 34%),
    linear-gradient(90deg, rgba(68, 43, 130, .30), rgba(255, 255, 255, .018));
  --event-badge: linear-gradient(135deg, #c9b8ff, #6745d0);
}

event[type="secret"]::before {
  content: "暗线";
  color: #fff;
}

event[type="gain"] {
  color: #dcffe8;
  border-color: rgba(112, 239, 158, .44);
  background:
    radial-gradient(circle at 0% 50%, rgba(112, 239, 158, .16), transparent 34%),
    linear-gradient(90deg, rgba(28, 115, 67, .24), rgba(255, 255, 255, .018));
  --event-badge: linear-gradient(135deg, #9effbf, #257846);
}

event[type="gain"]::before {
  content: "收获";
  color: #062313;
}

event[type="battle"] {
  color: #ffe1d4;
  border-color: rgba(255, 135, 72, .48);
  background:
    radial-gradient(circle at 0% 50%, rgba(255, 135, 72, .18), transparent 34%),
    linear-gradient(90deg, rgba(116, 52, 22, .28), rgba(255, 255, 255, .018));
  --event-badge: linear-gradient(135deg, #ffc08a, #b74c22);
}

event[type="battle"]::before {
  content: "战斗";
}

event[type="choice"] {
  color: #fff0c7;
  border-color: rgba(240, 196, 107, .50);
  background:
    radial-gradient(circle at 0% 50%, rgba(240, 196, 107, .18), transparent 34%),
    linear-gradient(90deg, rgba(132, 86, 26, .26), rgba(255, 255, 255, .018));
}

event[type="choice"]::before {
  content: "抉择";
}

event[type="notice"] {
  color: #dff4ff;
  border-color: rgba(121, 217, 255, .42);
  background:
    radial-gradient(circle at 0% 50%, rgba(121, 217, 255, .14), transparent 34%),
    linear-gradient(90deg, rgba(26, 84, 112, .22), rgba(255, 255, 255, .018));
  --event-badge: linear-gradient(135deg, #bdeeff, #4d94c8);
}

event[type="notice"]::before {
  content: "通告";
}

event[level="5"] {
  animation-duration: 1.35s;
}

/* ---------- 07 details / summary ---------- */

details {
  position: relative;
  z-index: 1;
  display: block;
  margin: 13px 0;
  border: 1px solid var(--dl-line);
  border-radius: 20px;
  background:
    radial-gradient(circle at 0% 0%, rgba(240, 196, 107, .055), transparent 30%),
    linear-gradient(145deg, rgba(12, 16, 38, .88), rgba(5, 8, 20, .86));
  box-shadow:
    0 8px 26px rgba(0, 0, 0, .28),
    inset 0 0 0 1px rgba(255, 255, 255, .032);
  overflow: hidden;
  transition: border-color .18s ease, box-shadow .18s ease;
}

details[open] {
  border-color: rgba(240, 196, 107, .52);
  box-shadow:
    0 0 24px rgba(240, 196, 107, .10),
    0 8px 26px rgba(0, 0, 0, .28),
    inset 0 0 20px rgba(143, 112, 255, .06);
}

summary {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  padding: 12px 16px;
  color: var(--dl-gold3);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: .05em;
  cursor: pointer;
  list-style: none;
  user-select: none;
  background:
    linear-gradient(90deg, rgba(143, 112, 255, .32), rgba(240, 196, 107, .13), transparent);
  border-bottom: 1px solid rgba(240, 196, 107, .17);
  position: relative;
}

summary::-webkit-details-marker {
  display: none;
}

summary::before {
  content: "";
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: var(--dl-gold);
  box-shadow: 0 0 12px rgba(240, 196, 107, .62);
}

summary::after {
  content: "魂力流转";
  margin-left: auto;
  color: rgba(245, 236, 217, .58);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .1em;
  white-space: nowrap;
}

details:not([open]) summary::after {
  content: "魂力封存";
  color: rgba(196, 185, 166, .48);
}

/* ---------- 08 状态行 p[t] ---------- */

details > p {
  margin: 0;
}

p[t] {
  position: relative;
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  margin: 0;
  padding: 11px 14px;
  color: #e9deca;
  font-size: 14px;
  line-height: 1.72;
  border-bottom: 1px solid rgba(240, 196, 107, .105);
  background:
    linear-gradient(90deg, rgba(255, 255, 255, .018), transparent);
}

p[t]:last-child {
  border-bottom: none;
}

p[t]::before {
  content: attr(t);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 27px;
  padding: 3px 8px;
  color: #1b1105;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.35;
  border-radius: 999px;
  background:
    linear-gradient(135deg, #f6d98a, #a97028);
  box-shadow:
    0 0 10px rgba(240, 196, 107, .20),
    inset 0 0 0 1px rgba(255, 255, 255, .22);
  white-space: nowrap;
}

p[t="魂环"],
p[t="魂骨"],
p[t="装备"],
p[t="物品"],
p[t="选项"] {
  display: block;
}

p[t="魂环"]::before,
p[t="魂骨"]::before,
p[t="装备"]::before,
p[t="物品"]::before,
p[t="选项"]::before {
  display: inline-flex;
  margin-bottom: 9px;
}

/* ---------- 09 数据标签 d / q / f / b ---------- */

d {
  color: #eadfca;
}

q {
  display: inline-block;
  quotes: none;
  max-width: 100%;
  padding: 6px 10px;
  color: #e4ddff;
  line-height: 1.72;
  border-left: 3px solid rgba(143, 112, 255, .78);
  border-radius: 12px;
  background:
    linear-gradient(90deg, rgba(143, 112, 255, .18), rgba(143, 112, 255, .065));
  box-shadow: inset 0 0 14px rgba(143, 112, 255, .07);
}

q::before,
q::after {
  content: "";
}

f {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  margin-right: 8px;
  color: #fff0bd;
  font-weight: 900;
  text-shadow: 0 0 12px rgba(240, 196, 107, .32);
  vertical-align: middle;
}

f::before {
  content: "✧";
  color: var(--dl-gold);
  text-shadow: 0 0 10px rgba(240, 196, 107, .42);
}

f[lv]::after {
  content: "Lv." attr(lv);
  margin-left: 2px;
  padding: 1px 7px;
  color: #1b1105;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.6;
  border-radius: 999px;
  background: linear-gradient(135deg, #f6d98a, #a97028);
  box-shadow: 0 0 10px rgba(240, 196, 107, .20);
}

b {
  color: #ffe8aa;
  font-weight: 900;
}

/* ---------- 10 当前字段主题 ---------- */

p[t="时空"] d,
p[t="势力"] d,
p[t="危险"] d,
p[t="偏离"] d,
p[t="状态"] d,
p[t="资源"] d,
p[t="数据"] d {
  display: inline-block;
  padding: 6px 9px;
  border: 1px solid rgba(240, 196, 107, .18);
  border-radius: 12px;
  background: rgba(255, 255, 255, .024);
}

p[t="基础"] f {
  font-size: 1.08em;
}

p[t="武魂"] {
  background:
    radial-gradient(circle at 100% 50%, rgba(143, 112, 255, .10), transparent 34%),
    linear-gradient(90deg, rgba(255, 255, 255, .018), transparent);
}

p[t="武魂"] f {
  color: #e8ddff;
  text-shadow: 0 0 14px rgba(143, 112, 255, .38);
}

p[t="暗流"] q,
p[t="内心"] q,
p[t="战术"] q {
  display: block;
  color: #e9e0ff;
  border-left-color: rgba(166, 126, 255, .82);
  background:
    linear-gradient(90deg, rgba(80, 54, 150, .25), rgba(143, 112, 255, .07));
}

p[t="危险"],
p[t="负面"],
p[t="伤势"] {
  background:
    radial-gradient(circle at 100% 50%, rgba(255, 75, 96, .10), transparent 34%),
    linear-gradient(90deg, rgba(255, 75, 96, .035), transparent);
}

p[t="危险"] d,
p[t="负面"] d,
p[t="伤势"] d {
  color: #ffd4d8;
  text-shadow: 0 0 10px rgba(255, 75, 96, .20);
}

p[t="危险"]::before,
p[t="负面"]::before,
p[t="伤势"]::before {
  color: #fff5f5;
  background: linear-gradient(135deg, #ff98a5, #a71930);
}

p[t="增益"] d,
p[t="资源"] d {
  color: #defee7;
}

p[t="增益"]::before,
p[t="资源"]::before {
  color: #062313;
  background: linear-gradient(135deg, #9effbf, #257846);
}

p[t="冷却"]::before,
p[t="战术"]::before {
  background: linear-gradient(135deg, #bdeeff, #4d94c8);
}

p[t="偏离"]::before {
  color: #fff;
  background: linear-gradient(135deg, #ffb36d, #9a4c18);
}

/* ---------- 11 魂环 r ---------- */

r {
  --ring-color: #f6d64a;
  --ring-glow: rgba(246, 214, 74, .66);
  --ring-border: rgba(240, 196, 107, .24);
  --ring-size: 20px;
  --ring-blur: 20px;
  --ring-bg: linear-gradient(90deg, rgba(255, 255, 255, .045), rgba(255, 255, 255, .018));

  display: block;
  position: relative;
  margin: 8px 0;
  min-height: 46px;
  padding: 10px 118px 10px 50px;
  color: #f2eadb;
  font-size: 14px;
  line-height: 1.65;
  border: 1px solid var(--ring-border);
  border-radius: 16px;
  background:
    radial-gradient(circle at 23px 50%, var(--ring-glow), transparent 28px),
    var(--ring-bg);
  overflow: hidden;
  box-shadow: inset 0 0 14px rgba(255, 255, 255, .018);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

r:hover {
  transform: translateY(-1px);
  border-color: rgba(255, 232, 170, .46);
  box-shadow:
    0 0 18px rgba(240, 196, 107, .10),
    inset 0 0 16px rgba(255, 255, 255, .025);
}

r::before {
  content: "";
  position: absolute;
  left: 15px;
  top: 50%;
  width: var(--ring-size);
  height: var(--ring-size);
  transform: translateY(-50%);
  border-radius: 50%;
  background: var(--ring-color);
  box-shadow:
    0 0 0 4px rgba(255, 255, 255, .055),
    0 0 var(--ring-blur) var(--ring-glow);
  animation: dl-ring-breath 2.8s ease-in-out infinite;
}

@keyframes dl-ring-breath {
  0%, 100% { transform: translateY(-50%) scale(1); opacity: .86; }
  50% { transform: translateY(-50%) scale(1.12); opacity: 1; }
}

r::after {
  content: attr(y) " · " attr(tier);
  position: absolute;
  right: 10px;
  top: 10px;
  max-width: 100px;
  padding: 2px 7px;
  color: var(--ring-badge-text, #1b1105);
  font-size: 11px;
  font-weight: 900;
  line-height: 1.45;
  text-align: center;
  border-radius: 999px;
  background: var(--ring-badge, linear-gradient(135deg, #ffe7a8, #b77a2d));
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

r[c="白"] {
  --ring-color: #f2f2f2;
  --ring-glow: rgba(255, 255, 255, .62);
  --ring-border: rgba(255, 255, 255, .28);
  --ring-badge: linear-gradient(135deg, #fff, #bdbdbd);
}

r[c="黄"] {
  --ring-color: #f6d64a;
  --ring-glow: rgba(246, 214, 74, .70);
  --ring-border: rgba(246, 214, 74, .34);
}

r[c="紫"] {
  --ring-color: #a05cff;
  --ring-glow: rgba(160, 92, 255, .76);
  --ring-border: rgba(160, 92, 255, .40);
  --ring-badge: linear-gradient(135deg, #d7c2ff, #7540d4);
  --ring-badge-text: #fff;
}

r[c="黑"] {
  --ring-color: #111;
  --ring-glow: rgba(210, 210, 210, .50);
  --ring-border: rgba(190, 190, 190, .30);
  --ring-badge: linear-gradient(135deg, #e6e6e6, #393939);
  --ring-badge-text: #fff;
}

r[c="红"] {
  --ring-color: #d51f35;
  --ring-glow: rgba(213, 31, 53, .82);
  --ring-border: rgba(255, 75, 96, .52);
  --ring-badge: linear-gradient(135deg, #ffb1b8, #a71930);
  --ring-badge-text: #fff;
}

r[c="金"] {
  --ring-color: #ffd86a;
  --ring-glow: rgba(255, 216, 106, .90);
  --ring-border: rgba(255, 216, 106, .58);
  --ring-badge: linear-gradient(135deg, #fff2bd, #d59a22);
}

r[c="橙金"] {
  --ring-color: #ff9f2f;
  --ring-glow: rgba(255, 159, 47, .90);
  --ring-border: rgba(255, 159, 47, .58);
  --ring-badge: linear-gradient(135deg, #ffd19a, #d56519);
}

r[tier="十年"] {
  --ring-size: 17px;
  --ring-blur: 12px;
  opacity: .88;
}

r[tier="百年"] {
  --ring-size: 20px;
  --ring-blur: 18px;
}

r[tier="千年"] {
  --ring-size: 22px;
  --ring-blur: 24px;
  --ring-bg:
    linear-gradient(90deg, rgba(116, 70, 255, .14), rgba(255, 255, 255, .018));
}

r[tier="万年"] {
  --ring-size: 24px;
  --ring-blur: 28px;
  --ring-bg:
    linear-gradient(90deg, rgba(0, 0, 0, .34), rgba(255, 255, 255, .020));
}

r[tier="十万年"] {
  --ring-size: 27px;
  --ring-blur: 36px;
  color: #ffe4e6;
  --ring-bg:
    radial-gradient(circle at 0% 50%, rgba(255, 75, 96, .22), transparent 35%),
    linear-gradient(90deg, rgba(110, 0, 20, .45), rgba(255, 255, 255, .022));
}

r[tier="百万年"] {
  --ring-size: 29px;
  --ring-blur: 42px;
  color: #fff5cf;
  --ring-bg:
    radial-gradient(circle at 0% 50%, rgba(255, 216, 106, .28), transparent 35%),
    linear-gradient(90deg, rgba(128, 82, 8, .42), rgba(255, 255, 255, .026));
}

r[type="控制"] { border-left: 4px solid rgba(143, 112, 255, .75); }
r[type="强攻"] { border-left: 4px solid rgba(255, 75, 96, .75); }
r[type="敏攻"] { border-left: 4px solid rgba(121, 217, 255, .75); }
r[type="防御"] { border-left: 4px solid rgba(240, 196, 107, .75); }
r[type="辅助"] { border-left: 4px solid rgba(112, 239, 158, .75); }
r[type="精神"] { border-left: 4px solid rgba(166, 126, 255, .85); }
r[type="特殊"] { border-left: 4px solid rgba(255, 216, 106, .85); }
r[type="武魂真身"] { border-left: 4px solid rgba(255, 216, 106, .90); }

/* ---------- 12 魂骨 bone ---------- */

bone {
  --bone-border: rgba(240, 196, 107, .32);
  --bone-badge: linear-gradient(135deg, #ffe7a8, #b77a2d);
  --bone-text: #ffe8aa;

  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  margin: 4px 7px 4px 0;
  padding: 7px 11px;
  color: var(--bone-text);
  font-weight: 900;
  line-height: 1.5;
  border: 1px solid var(--bone-border);
  border-radius: 14px;
  background:
    radial-gradient(circle at 0% 50%, rgba(240, 196, 107, .18), transparent 30%),
    linear-gradient(135deg, rgba(240, 196, 107, .11), rgba(143, 112, 255, .08));
  box-shadow:
    inset 0 0 12px rgba(240, 196, 107, .06),
    0 0 14px rgba(0, 0, 0, .12);
  vertical-align: middle;
}

bone::before {
  content: attr(slot);
  flex: 0 0 auto;
  padding: 2px 7px;
  color: #1b1105;
  font-size: 11px;
  font-weight: 900;
  border-radius: 999px;
  background: var(--bone-badge);
}

bone::after {
  content: attr(tier);
  flex: 0 0 auto;
  color: rgba(245, 236, 217, .72);
  font-size: 11px;
  font-weight: 800;
}

bone[slot="头部"] { --bone-border: rgba(166,126,255,.36); --bone-text: #eadfff; }
bone[slot="躯干"] { --bone-border: rgba(240,196,107,.40); --bone-text: #ffe8aa; }
bone[slot="左臂"],
bone[slot="右臂"] { --bone-border: rgba(255,75,96,.36); --bone-text: #ffe1e4; }
bone[slot="左腿"],
bone[slot="右腿"] { --bone-border: rgba(121,217,255,.36); --bone-text: #dff4ff; }
bone[slot="外附"] { --bone-border: rgba(255,216,106,.54); --bone-text: #fff3c8; }

bone[tier="千年"] {
  --bone-badge: linear-gradient(135deg, #d7c2ff, #7540d4);
  --bone-text: #eadfff;
}

bone[tier="万年"] {
  --bone-badge: linear-gradient(135deg, #e6e6e6, #393939);
  --bone-text: #eeeeee;
}

bone[tier="十万年"] {
  --bone-border: rgba(255, 75, 96, .58);
  --bone-badge: linear-gradient(135deg, #ffb1b8, #a71930);
  --bone-text: #ffe1e4;
  box-shadow: 0 0 18px rgba(255, 75, 96, .13);
}

bone[tier="百万年"] {
  --bone-border: rgba(255, 216, 106, .68);
  --bone-badge: linear-gradient(135deg, #fff2bd, #d59a22);
  --bone-text: #fff3c8;
  box-shadow: 0 0 20px rgba(255, 216, 106, .16);
}

p[t="魂骨"] > b {
  display: inline-block;
  padding: 6px 10px;
  color: #ffe8aa;
  border: 1px solid rgba(240, 196, 107, .28);
  border-radius: 12px;
  background: rgba(240, 196, 107, .10);
}

/* ---------- 13 装备 item ---------- */

item {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  margin: 3px 6px 3px 0;
  padding: 5px 10px;
  color: #dce6ff;
  line-height: 1.45;
  border: 1px solid rgba(155, 178, 255, .26);
  border-radius: 999px;
  background:
    linear-gradient(135deg, rgba(83, 103, 160, .22), rgba(83, 103, 160, .10));
  vertical-align: middle;
}

item::before {
  content: "物";
  margin-right: 6px;
  padding: 1px 5px;
  color: #10182b;
  font-size: 10px;
  font-weight: 900;
  border-radius: 999px;
  background: #dce6ff;
}

item[rare="rare"] {
  color: #dff4ff;
  border-color: rgba(121, 217, 255, .38);
  background: rgba(121, 217, 255, .10);
}

item[rare="rare"]::before {
  content: "稀";
  background: #bdeeff;
}

item[rare="epic"] {
  color: #e7ddff;
  border-color: rgba(166, 126, 255, .42);
  background: rgba(143, 112, 255, .13);
}

item[rare="epic"]::before {
  content: "珍";
  color: #fff;
  background: #7f5cff;
}

item[rare="legend"] {
  color: #fff0c5;
  border-color: rgba(240, 196, 107, .48);
  background: rgba(240, 196, 107, .13);
}

item[rare="legend"]::before {
  content: "传";
  background: #ffe7a8;
}

item[rare="divine"] {
  color: #fff5cf;
  border-color: rgba(255, 216, 106, .66);
  background:
    radial-gradient(circle at 0% 50%, rgba(255,216,106,.22), transparent 34%),
    rgba(255, 216, 106, .10);
  box-shadow: 0 0 16px rgba(255, 216, 106, .14);
}

item[rare="divine"]::before {
  content: "神";
  background: linear-gradient(135deg, #fff2bd, #d59a22);
}

/* ---------- 14 NPC ---------- */

npc {
  display: block;
  position: relative;
  margin: 12px;
  padding: 12px;
  border: 1px solid rgba(143, 112, 255, .34);
  border-radius: 18px;
  background:
    radial-gradient(circle at 0% 0%, rgba(143, 112, 255, .14), transparent 34%),
    rgba(8, 11, 28, .60);
  box-shadow:
    inset 0 0 18px rgba(143, 112, 255, .07),
    0 8px 20px rgba(0, 0, 0, .18);
  overflow: hidden;
}

npc::before {
  content: "NPC 档案";
  display: block;
  margin: -12px -12px 10px;
  padding: 9px 14px;
  color: #dcd4ff;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .14em;
  background: linear-gradient(90deg, rgba(86, 66, 168, .44), transparent);
  border-bottom: 1px solid rgba(143, 112, 255, .22);
}

npc p[t] {
  margin-left: -4px;
  margin-right: -4px;
  padding-left: 10px;
  padding-right: 10px;
}

npc f {
  color: #e9e0ff;
  text-shadow: 0 0 12px rgba(143, 112, 255, .32);
}

npc[role="ally"],
npc[mood="trust"] {
  border-color: rgba(112, 239, 158, .38);
}

npc[role="ally"]::before {
  content: "盟友档案";
  color: #dfffe8;
  background: linear-gradient(90deg, rgba(43, 128, 72, .44), transparent);
}

npc[role="enemy"],
npc[mood="hostile"] {
  border-color: rgba(255, 75, 96, .46);
}

npc[role="enemy"]::before {
  content: "敌对档案";
  color: #ffd7d7;
  background: linear-gradient(90deg, rgba(150, 25, 42, .44), transparent);
}

npc[role="neutral"],
npc[mood="watch"] {
  border-color: rgba(121, 217, 255, .34);
}

npc[role="neutral"]::before {
  content: "中立档案";
  color: #dff4ff;
  background: linear-gradient(90deg, rgba(38, 96, 128, .44), transparent);
}

npc[role="mentor"] {
  border-color: rgba(240, 196, 107, .44);
}

npc[role="mentor"]::before {
  content: "导师档案";
  color: #fff0bd;
  background: linear-gradient(90deg, rgba(164, 110, 37, .44), transparent);
}

npc[mood="secret"] {
  border-color: rgba(166, 126, 255, .46);
}

/* ---------- 15 记忆表格 ---------- */

table {
  width: calc(100% - 24px);
  margin: 12px;
  border-collapse: separate;
  border-spacing: 0;
  color: #eadfca;
  font-size: 13px;
  overflow: hidden;
  border: 1px solid rgba(240, 196, 107, .22);
  border-radius: 16px;
  background: rgba(5, 8, 20, .54);
}

th,
td {
  padding: 9px 10px;
  border-right: 1px solid rgba(240, 196, 107, .12);
  border-bottom: 1px solid rgba(240, 196, 107, .12);
  vertical-align: top;
}

th:last-child,
td:last-child {
  border-right: 0;
}

tr:last-child td {
  border-bottom: 0;
}

th {
  color: #1b1105;
  font-weight: 900;
  background: linear-gradient(135deg, #ffe7a8, #b77a2d);
}

table tr[c="ltm"] td:first-child {
  color: #1b1105;
  font-weight: 900;
  background: linear-gradient(135deg, #ffe7a8, #b77a2d);
}

table tr[c="stm"] td:first-child {
  color: #fff;
  font-weight: 900;
  background: linear-gradient(135deg, #c9b8ff, #6745d0);
}

/* ---------- 16 行动选项 ---------- */

p[t="选项"] {
  display: grid;
  gap: 9px;
}

p[t="选项"]::before {
  width: max-content;
}

p[t="选项"] a {
  display: block;
  position: relative;
  min-height: 42px;
  padding: 10px 12px 10px 42px;
  color: #fff0bd;
  text-decoration: none;
  line-height: 1.58;
  border: 1px solid rgba(240, 196, 107, .22);
  border-radius: 14px;
  background:
    linear-gradient(135deg, rgba(240, 196, 107, .10), rgba(143, 112, 255, .06));
  box-shadow: inset 0 0 14px rgba(255, 255, 255, .018);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

p[t="选项"] a::before {
  content: "➤";
  position: absolute;
  left: 14px;
  top: 10px;
  color: var(--dl-gold);
  text-shadow: 0 0 10px rgba(240, 196, 107, .36);
}

p[t="选项"] a:hover {
  transform: translateY(-1px);
  border-color: rgba(255, 232, 170, .52);
  background:
    linear-gradient(135deg, rgba(240, 196, 107, .15), rgba(143, 112, 255, .09));
}

/* ---------- 17 移动端 ---------- */

@media (max-width: 720px) {
  ai {
    margin: 10px auto;
    padding: 12px;
    border-radius: 20px;
  }

  ai::after {
    display: none;
  }

  hd {
    padding: 12px;
    font-size: 12px;
    line-height: 1.6;
  }

  text {
    padding: 13px;
    border-radius: 18px;
  }

  text p {
    padding: 11px 12px;
    font-size: 14px;
    line-height: 1.88;
  }

  say {
    max-width: 100%;
    font-size: 14px;
  }

  event {
    padding: 42px 12px 12px;
  }

  event::before {
    top: 11px;
  }

  event::after {
    display: none;
  }

  summary {
    padding: 11px 12px;
    font-size: 14px;
  }

  summary::after {
    display: none;
  }

  p[t] {
    grid-template-columns: 1fr;
    gap: 7px;
    padding: 10px 12px;
  }

  p[t]::before {
    width: max-content;
  }

  r {
    padding: 42px 12px 10px 46px;
    min-height: 76px;
  }

  r::after {
    left: 12px;
    right: auto;
    top: 10px;
    max-width: calc(100% - 24px);
  }

  r::before {
    top: 56px;
  }

  bone {
    display: flex;
    width: 100%;
    align-items: flex-start;
    flex-wrap: wrap;
  }

  bone::after {
    margin-left: auto;
  }

  item {
    max-width: 100%;
  }

  npc {
    margin: 10px 0;
    padding: 10px;
  }

  npc::before {
    margin: -10px -10px 10px;
  }

  table {
    display: block;
    width: 100%;
    margin: 10px 0;
    overflow-x: auto;
    white-space: nowrap;
  }

  p[t="选项"] a {
    padding: 10px 12px 10px 36px;
  }

  p[t="选项"] a::before {
    left: 12px;
  }
}
/* =========================================================
   斗罗大陆 CSS 降噪补丁
   目标：去掉三层框、减少发光、让正文更像聊天内容而不是仪表盘
   直接追加到 CSS 最末尾
   ========================================================= */

/* ---------- 1. 外层容器降噪：只保留一层轻背景 ---------- */

ai {
  width: auto !important;
  max-width: 100% !important;
  margin: 10px 4px !important;
  padding: 10px !important;
  border: 0 !important;
  border-radius: 16px !important;
  box-shadow: none !important;
  background:
    linear-gradient(145deg, rgba(7, 8, 22, .92), rgba(16, 16, 38, .88)) !important;
  overflow: visible !important;
}

ai::before,
ai::after {
  display: none !important;
}

/* ---------- 2. 顶栏保留，但变薄 ---------- */

hd {
  margin: 0 0 10px !important;
  padding: 10px 12px !important;
  min-height: auto !important;
  border: 1px solid rgba(240, 196, 107, .24) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  background:
    linear-gradient(90deg, rgba(44, 33, 78, .66), rgba(14, 16, 34, .72)) !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

hd::before,
hd::after {
  opacity: .65 !important;
}

/* ---------- 3. 正文区去框：不再套大卡片 ---------- */

text {
  margin: 0 0 10px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  overflow: visible !important;
}

text::before {
  display: none !important;
}

/* 正文段落不再每段一个框，只做轻微分段 */
text p {
  margin: 0 0 12px !important;
  padding: 0 2px !important;
  color: #eee4d2 !important;
  font-size: 15.5px !important;
  line-height: 1.9 !important;
  text-indent: 2em !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

text p:hover {
  background: transparent !important;
}

/* ---------- 4. 对话气泡变轻，不做厚框 ---------- */

say {
  max-width: 88% !important;
  margin: 10px 0 !important;
  padding: 10px 12px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(143, 112, 255, .22) !important;
  box-shadow: none !important;
  background:
    linear-gradient(135deg, rgba(58, 47, 96, .42), rgba(18, 20, 42, .50)) !important;
}

say[side="right"] {
  border-color: rgba(240, 196, 107, .22) !important;
  background:
    linear-gradient(135deg, rgba(86, 58, 28, .38), rgba(18, 20, 42, .50)) !important;
}

say::after {
  display: none !important;
}

say::before {
  margin-bottom: 5px !important;
  box-shadow: none !important;
}

/* ---------- 5. aside / inner / event 降低存在感 ---------- */

aside,
inner,
event {
  box-shadow: none !important;
}

aside,
inner {
  margin: 10px 0 !important;
  padding: 9px 11px !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, .035) !important;
}

event {
  margin: 10px 0 !important;
  padding: 10px 12px 10px 48px !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  background:
    linear-gradient(90deg, rgba(240, 196, 107, .09), rgba(143, 112, 255, .05)) !important;
}

event::after {
  display: none !important;
}

/* ---------- 6. details 只保留一层列表感 ---------- */

details {
  margin: 9px 0 !important;
  border: 1px solid rgba(240, 196, 107, .18) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  background: rgba(8, 10, 25, .56) !important;
  overflow: hidden !important;
}

details[open] {
  border-color: rgba(240, 196, 107, .28) !important;
  box-shadow: none !important;
}

summary {
  min-height: 42px !important;
  padding: 10px 12px !important;
  border-bottom: 1px solid rgba(240, 196, 107, .10) !important;
  background:
    linear-gradient(90deg, rgba(143, 112, 255, .16), rgba(240, 196, 107, .06), transparent) !important;
}

summary::after {
  display: none !important;
}

/* 状态行不要再像卡片，改成干净的表格式 */
p[t] {
  grid-template-columns: 76px minmax(0, 1fr) !important;
  gap: 8px !important;
  padding: 9px 12px !important;
  border-bottom: 1px solid rgba(240, 196, 107, .08) !important;
  background: transparent !important;
}

p[t]::before {
  min-height: 24px !important;
  padding: 2px 7px !important;
  box-shadow: none !important;
  background:
    linear-gradient(135deg, rgba(246, 217, 138, .92), rgba(169, 112, 40, .92)) !important;
}

/* 数据胶囊降噪 */
p[t="时空"] d,
p[t="势力"] d,
p[t="危险"] d,
p[t="偏离"] d,
p[t="状态"] d,
p[t="资源"] d,
p[t="数据"] d {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

/* ---------- 7. 魂环 / 魂骨 / 物品保留辨识度，但去重框 ---------- */

r {
  margin: 6px 0 !important;
  min-height: 40px !important;
  padding: 9px 102px 9px 42px !important;
  border-radius: 12px !important;
  border-width: 1px !important;
  box-shadow: none !important;
  background:
    radial-gradient(circle at 20px 50%, var(--ring-glow), transparent 23px),
    rgba(255, 255, 255, .035) !important;
}

r:hover {
  transform: none !important;
  box-shadow: none !important;
}

r::before {
  left: 13px !important;
}

r::after {
  right: 8px !important;
  box-shadow: none !important;
}

bone,
item {
  box-shadow: none !important;
}

bone {
  border-radius: 12px !important;
  background:
    linear-gradient(135deg, rgba(240, 196, 107, .08), rgba(143, 112, 255, .05)) !important;
}

item {
  background: rgba(255, 255, 255, .045) !important;
}

/* ---------- 8. NPC 降噪：不再像嵌套大卡 ---------- */

npc {
  margin: 9px 0 !important;
  padding: 10px !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  background: rgba(255, 255, 255, .035) !important;
}

npc::before {
  margin: -10px -10px 8px !important;
  padding: 8px 10px !important;
  border-bottom: 1px solid rgba(143, 112, 255, .14) !important;
  background: rgba(143, 112, 255, .10) !important;
}

/* ---------- 9. 记忆表格变轻 ---------- */

table {
  width: 100% !important;
  margin: 8px 0 !important;
  border-radius: 12px !important;
  border-color: rgba(240, 196, 107, .16) !important;
  box-shadow: none !important;
  background: rgba(255, 255, 255, .025) !important;
}

th,
td {
  padding: 8px !important;
  border-color: rgba(240, 196, 107, .08) !important;
}

/* ---------- 10. 行动选项不要太厚 ---------- */

p[t="选项"] {
  gap: 7px !important;
}

p[t="选项"] a {
  min-height: 40px !important;
  padding: 9px 11px 9px 36px !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  background:
    linear-gradient(135deg, rgba(240, 196, 107, .07), rgba(143, 112, 255, .045)) !important;
}

p[t="选项"] a:hover {
  transform: none !important;
}

/* ---------- 11. 右侧贴边问题：移动端强制留呼吸边距 ---------- */

@media (max-width: 720px) {
  ai {
    margin-left: 6px !important;
    margin-right: 10px !important;
    padding: 9px !important;
    border-radius: 14px !important;
  }

  hd {
    border-radius: 11px !important;
  }

  text p {
    font-size: 15px !important;
    line-height: 1.86 !important;
  }

  say {
    max-width: 100% !important;
  }

  event {
    padding: 38px 10px 10px !important;
  }

  p[t] {
    grid-template-columns: 1fr !important;
    padding: 9px 10px !important;
  }

  p[t]::before {
    width: max-content !important;
  }

  r {
    padding: 38px 10px 9px 40px !important;
    min-height: 68px !important;
  }

  r::after {
    left: 10px !important;
    right: auto !important;
    top: 9px !important;
    max-width: calc(100% - 20px) !important;
  }

  r::before {
    top: 52px !important;
  }

  table {
    display: block !important;
    overflow-x: auto !important;
  }
}