/* ═══════════════════════════════════════════════════════════════════
   床主无感染区 (builtInCss) v2.0 —— 扁平组件类版 · 视觉身份「警示·废土」
   主色 血锈红 #C0572E · 警戒橙 #E07B39 · 警示黄 #E8B04B
   校服蓝灰 #7B8FA3 · 军卡其 #8A7A5C · 医疗青 #6E9B8B
   焦黑混凝土底 #0C0E11 · 文字灰白 #E8EBEE
   装饰母题：监控屏扫描线 / 血手印警示斜纹 / 对讲机 / 作战日志信纸 / 广播
   气质：末日学园警戒广播 + 焦土幸存基地 + 冷硬监视屏
   组件专属造型（不是换色底座，各有其形）：
     状态栏    = 监控屏   （扫描线 · 四角监视框 · REC·● · 每格=st-cell）
     基地面板   = 控制台屏 （深色屏幕 · 内部细网格 · cp-mode模式徽章）
     行动选项  = 频道指令 （方角频道键 · 频道数字 · 信号点）
     自身栏    = 档案卡   （证件档案纸纹 · 圆孔 · 封签）
     NPC状态栏 = 幸存者名册（名/岗位/HP条/心情+压力）
     交流卡    = 联络卡   （对讲机信号圈 · 三层弧线）
     思维链    = 战术推演 （对讲机 · 战术网格）
     小总结/大总结 = 作战日志·信纸（装订圆孔 · 虚线缝线 · 📒）
     主线栏    = 广播简报 （警示斜条纹 · 信号弧）
     系统提示  = 夜袭警报框（血锈左缘 · 警报小标签）
   v2.0 变化：内层全部改为与《学园无感染区_后置词.txt》一一对应的【扁平类】。
     旧深嵌套模板类（dl-panel-*/dl-camp-*/st-item/st-ct/st-value/st-bar/st-ico、
     dl-self-row/dl-s-*、dl-npc-row/dl-n-*、dl-act-item/dl-act-list、dl-sum-*）已废弃移除。
     设计令牌/主题色/装饰母题/响应式/无障碍原样保留。
   纯CSS无JS · 交互只用 details/summary + :has() + 兄弟选择器
   零事件绑定 · 零链接跳转 · 零表单控件 · 零内联脚本（平台过滤成纯文本不渲染）
   ═══════════════════════════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════════════════════════
   0. 设计令牌（CSS变量 · 警示废土全套 · 改不动）
   ═══════════════════════════════════════════════════════════════════ */
.status-bar,
.dl-self,
.dl-npc-bar,
.dl-rel-card,
.dl-quest-bar,
.dl-sys-note,
.dl-actions,
.dl-summary,
.dl-chain,
.dl-camp-panel{
  --dl-bg:#0C0E11;                 /* 焦黑混凝土 */
  --dl-card:#15181D;               /* 焦黑暗卡 */
  --dl-card-hover:#1D2126;
  --dl-elevated:#262B31;
  --dl-separator:rgba(192,87,46,.30);     /* 血锈红·细线 */
  --dl-separator-soft:rgba(192,87,46,.14);/* 血锈红·淡线 */
  --dl-label:#F2F4F7;              /* 灰白 */
  --dl-label-2:#D4DAE1;            /* 铁灰 */
  --dl-label-3:#A9B1BC;            /* 战灰 */
  --dl-label-4:#7E8794;            /* 深灰 */
  --dl-accent:#C0572E;             /* 血锈红 */
  --dl-accent-2:#E8A14B;           /* 警戒橙 */
  --dl-green:#6E9B8B;              /* 医疗青 */
  --dl-red:#B0413A;                /* 血污红 */
  --dl-orange:#E07B39;             /* 警戒橙 */
  --dl-yellow:#E8B04B;             /* 警示黄 */
  --dl-purple:#7B8FA3;             /* 校服蓝灰 */
  --dl-pink:#C98B9E;               /* 尘旧粉 */
  --dl-moon:#8CA3C8;               /* 残月蓝 */
  --dl-iron:#8A7A5C;               /* 军卡其 */
  --dl-radius-sm:6px;
  --dl-radius-md:12px;
  --dl-radius-lg:18px;
  --dl-radius-xl:26px;
  --dl-font:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  --dl-font-seal:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  --dl-shadow-card:0 1px 3px rgba(0,0,0,.5),0 1px 1px rgba(0,0,0,.4);
  --dl-shadow-raised:0 5px 16px rgba(0,0,0,.55),0 0 0 1px rgba(192,87,46,.16);
  --dl-shadow-float:0 16px 48px rgba(0,0,0,.7);
}

/* ═══════════════════════════════════════════════════════════════════
   1. 状态栏 .status-bar —— 监控屏（扫描线 · 四角监视框 · REC·● · 每格一cell）
   时间/位置 / 物资 / 士气 / 模式 · 每格=st-cell(st-label小灰字+st-content主色字)
   ═══════════════════════════════════════════════════════════════════ */
.status-bar{
  --c-day:#E8B04B;                 /* 昼·警示黄 */
  --c-night:#7B8FA3;               /* 夜·校服蓝灰 */
  --c-late:#8A7A5C;                /* 深·军卡其 */
  --c-money:#E8A14B;               /* 物资·警戒橙 */
  --c-hp:#6E9B8B;                  /* 士气·医疗青 */
  --c-warn:#B0413A;                /* 血污红 */
  --c-mood:#E8B04B;                /* 心情·警示黄 */

  display:grid;
  grid-template-columns:1fr 1fr;
  gap:2px;
  width:100%;max-width:none;margin:10px auto 0;box-sizing:border-box;
  padding:4px;
  background:#15181D;
  border:1px solid rgba(192,87,46,.30);
  border-radius:26px;
  overflow:hidden;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  font-size:15px;line-height:1.4;color:#F2F4F7;
  box-shadow:0 1px 3px rgba(0,0,0,.5),0 1px 1px rgba(0,0,0,.4);
  position:relative;
  transition:border-color .25s,box-shadow .25s;
}
/* 监控屏暗扫描网格 + 四角监视框 */
.status-bar::before{
  content:'';position:absolute;inset:3px;z-index:0;pointer-events:none;
  background:
    repeating-linear-gradient(0deg,rgba(192,87,46,.05) 0 1px,transparent 1px 16px),
    repeating-linear-gradient(90deg,rgba(192,87,46,.05) 0 1px,transparent 1px 16px),
    linear-gradient(#C0572E,#C0572E) 0 0 / 12px 2px no-repeat,
    linear-gradient(#C0572E,#C0572E) 0 0 / 2px 12px no-repeat,
    linear-gradient(#C0572E,#C0572E) 100% 0 / 12px 2px no-repeat,
    linear-gradient(#C0572E,#C0572E) 100% 0 / 2px 12px no-repeat,
    linear-gradient(#C0572E,#C0572E) 0 100% / 12px 2px no-repeat,
    linear-gradient(#C0572E,#C0572E) 0 100% / 2px 12px no-repeat,
    linear-gradient(#C0572E,#C0572E) 100% 100% / 12px 2px no-repeat,
    linear-gradient(#C0572E,#C0572E) 100% 100% / 2px 12px no-repeat;
}
/* REC·● 红点（监控录像指示） */
.status-bar::after{
  content:'';position:absolute;right:9px;top:9px;width:7px;height:7px;z-index:2;pointer-events:none;
  border-radius:50%;
  background:radial-gradient(circle at 40% 35%,#FF6B5E,#B0413A 70%);
  box-shadow:0 0 6px rgba(176,65,58,.9),0 0 0 3px rgba(176,65,58,.18);
  animation:warn-blink 1.6s ease-in-out infinite;
}
.status-bar:hover{
  border-color:rgba(192,87,46,.5);
  box-shadow:0 5px 16px rgba(0,0,0,.55),0 0 0 1px rgba(192,87,46,.16);
}
/* 整屏告警态（容器级修饰 · 保留原样） */
.status-bar.alert{border-color:rgba(176,65,58,.5) !important;animation:warn-glow 2s ease-in-out infinite;}

/* 网格单元 —— 监控分格（标签行+内容行） */
.st-cell{
  display:flex;flex-direction:column;gap:5px;
  padding:12px 15px;
  background:#15181D;
  border-radius:18px;
  position:relative;z-index:1;
  overflow:hidden;min-width:0;
}
/* 格角信道指示灯（小方块灯） */
.st-cell::after{
  content:'';position:absolute;right:9px;bottom:9px;width:6px;height:6px;border-radius:2px;
  background:rgba(232,161,75,.55);
  box-shadow:0 0 0 1px rgba(232,161,75,.25);
  pointer-events:none;
}
/* 每格标签 —— 战灰小字 */
.st-label{
  font-size:12px;color:#A9B1BC;
  letter-spacing:1px;font-weight:700;font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  white-space:nowrap;
}
/* 每格内容 —— 灰白主色字（可含 st-tag / st-progress） */
.st-content{
  font-size:15.5px;color:#F2F4F7;font-weight:600;
  line-height:1.4;letter-spacing:.3px;
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  word-break:break-word;
}
/* 时段小圆签（昼/夜/深） */
.st-tag{
  display:inline-block;padding:2px 11px;font-size:12px;font-weight:600;
  flex-shrink:0;border-radius:20px;font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  color:#7B8FA3;
  background:rgba(123,143,163,.14);
  border:1px solid rgba(123,143,163,.28);
}
/* 士气进度条：st-progress 暗底轨道 + i.st-progress-bar 医疗青渐变 */
.st-progress{
  display:inline-block;width:64px;height:6px;flex-shrink:0;vertical-align:middle;
  background:rgba(0,0,0,.5);border-radius:3px;overflow:hidden;
  border:1px solid rgba(110,155,139,.3);
}
.st-progress > .st-progress-bar{
  display:block;height:100%;
  background:linear-gradient(90deg,#6E9B8B,#A3C9B8);
  border-radius:3px;transition:width .3s;
}
/* 涨跌动画（警戒橙闪=升 / 血污红闪=降）· 挂格上 .st-up/.st-down */
.st-cell.st-up{background:linear-gradient(180deg,rgba(232,161,75,.08),rgba(21,24,29,.96));}
.st-cell.st-up .st-content{animation:flash-up 1.2s ease;}
.st-cell.st-down{background:linear-gradient(180deg,rgba(176,65,58,.08),rgba(21,24,29,.96));}
.st-cell.st-down .st-content{animation:flash-down 1.2s ease;}

@keyframes warn-blink{0%,100%{opacity:1}50%{opacity:.25}}
@keyframes warn-glow{0%,100%{box-shadow:0 0 0 1px rgba(176,65,58,.2),0 0 12px rgba(176,65,58,.12)}50%{box-shadow:0 0 0 1px rgba(176,65,58,.45),0 0 20px rgba(176,65,58,.28)}}
@keyframes flash-up{0%{text-shadow:0 0 10px rgba(232,161,75,.85);transform:scale(1.06)}100%{text-shadow:none;transform:scale(1)}}
@keyframes flash-down{0%{text-shadow:0 0 10px rgba(176,65,58,.85);transform:scale(1.06)}100%{text-shadow:none;transform:scale(1)}}

/* ═══════════════════════════════════════════════════════════════════
   2. 自身状态栏 .dl-self —— 档案卡（指挥官档案 · 固定八行 · 防AI遗忘）
   人设/身心/职务/能力/伤势/风评/随身/着装 · self-row=label+value 平铺
   ═══════════════════════════════════════════════════════════════════ */
.dl-self{
  width:100%;max-width:none;margin:6px auto 0;box-sizing:border-box;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  background:#161A20;
  border:1px solid rgba(192,87,46,.30);
  border-top:2px solid rgba(192,87,46,.55);   /* 血锈红发丝线 */
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 1px 3px rgba(0,0,0,.5),0 1px 1px rgba(0,0,0,.4);
  color:#F2F4F7;
  position:relative;
  transition:border-color .25s,box-shadow .25s;
}
/* 档案卡纸纹：左侧装订圆孔 */
.dl-self::before{
  content:'';position:absolute;left:5px;top:16px;bottom:16px;width:8px;pointer-events:none;
  background-image:radial-gradient(circle at 4px 6px,#07090B 0 2.5px,transparent 3px);
  background-size:8px 26px;background-repeat:repeat-y;
  z-index:0;
}
.dl-self:hover{
  border-color:rgba(192,87,46,.5);
  box-shadow:0 5px 16px rgba(0,0,0,.55),0 0 0 1px rgba(192,87,46,.16);
}
/* 折叠头 summary —— 档案封签 */
.dl-self>summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:center;gap:8px;
  padding:12px 16px;
  font-size:15px;font-weight:600;color:#F2F4F7;letter-spacing:1px;
  background:linear-gradient(90deg,rgba(192,87,46,.18),rgba(192,87,46,.04));
  border-bottom:1px solid rgba(192,87,46,.14);
  user-select:none;position:relative;z-index:1;
}
.dl-self>summary::-webkit-details-marker{display:none;}
.dl-self>summary::-moz-list-marker{display:none;}
.dl-self>summary .dl-self-ic{font-size:17px;}
.dl-self:not([open])>summary{border-bottom:none;}

/* 行容器 —— 档案分栏线（self-row = self-label + self-value 平铺） */
.self-row{
  display:flex;align-items:flex-start;gap:12px;
  padding:8px 15px 8px 14px;
  border-bottom:1px dashed rgba(192,87,46,.18);
  font-size:14px;line-height:1.5;
  position:relative;z-index:1;
}
.self-row:last-child{border-bottom:none;}
/* 左缘色条 · 按行分色（废土八相） */
.self-row::before{
  content:'';position:absolute;left:0;top:6px;bottom:6px;
  width:3px;border-radius:0 3px 3px 0;
}
.self-row:nth-of-type(1)::before{background:#E8A14B;}   /* 人设·警戒橙 */
.self-row:nth-of-type(2)::before{background:#6E9B8B;}   /* 身心·医疗青 */
.self-row:nth-of-type(3)::before{background:#7B8FA3;}   /* 职务·校服蓝灰 */
.self-row:nth-of-type(4)::before{background:#E8B04B;}   /* 能力·警示黄 */
.self-row:nth-of-type(5)::before{background:#B0413A;}   /* 伤势·血污红 */
.self-row:nth-of-type(6)::before{background:#C98B9E;}   /* 风评·尘旧粉 */
.self-row:nth-of-type(7)::before{background:#8A7A5C;}   /* 随身·军卡其 */
.self-row:nth-of-type(8)::before{background:#C0572E;}   /* 着装·血锈红 */
/* 标签 —— 战灰小字 */
.self-label{
  color:#A9B1BC;flex-shrink:0;font-weight:700;font-size:12px;
  min-width:48px;white-space:nowrap;letter-spacing:1px;font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  padding-top:2px;
}
/* 值 —— 灰白主色字 */
.self-value{color:#F2F4F7;flex:1;word-break:break-word;font-size:14px;line-height:1.5;}
.self-value em{font-style:normal;color:#E8A14B;font-weight:600;}

/* 能力评级徽章（rk-s血污红 / rk-a警戒橙 / rk-b医疗青 / rk-c警戒橙 / rk-d血污红） */
.dl-self-rank{
  display:inline-flex;align-items:center;justify-content:center;
  width:24px;height:24px;border-radius:6px;
  font-size:12px;font-weight:800;border:1px solid;
  vertical-align:middle;margin-right:6px;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
}
.dl-self-rank.rk-s{color:#fff;background:linear-gradient(135deg,#262B31,#B0413A);border-color:rgba(255,255,255,.3);box-shadow:0 0 8px rgba(176,65,58,.4);}
.dl-self-rank.rk-a{color:#20110A;background:linear-gradient(135deg,#E8A14B,#C0572E);border-color:rgba(232,161,75,.55);box-shadow:0 0 8px rgba(192,87,46,.35);}
.dl-self-rank.rk-b{color:#6E9B8B;background:rgba(110,155,139,.15);border-color:rgba(110,155,139,.4);}
.dl-self-rank.rk-c{color:#E07B39;background:rgba(224,123,57,.15);border-color:rgba(224,123,57,.4);}
.dl-self-rank.rk-d{color:#B0413A;background:rgba(176,65,58,.15);border-color:rgba(176,65,58,.4);}

/* 伤势（负面）状态色 */
.self-value .neg-clean{color:#6E9B8B;font-weight:600;}
.self-value .neg-minor{color:#E07B39;font-weight:600;}
.self-value .neg-major{color:#B0413A;font-weight:700;animation:warn-blink 1.5s ease-in-out infinite;}

/* 风评标签（self-value 内小圆签） */
.self-value .rep-tag{
  display:inline-block;padding:2px 10px;border-radius:10px;
  font-size:12px;font-weight:600;letter-spacing:.3px;
}
/* 风评标签颜色（全局 · 废土五色） */
.rep-tag.rp-new{color:#8CA3C8;background:rgba(140,163,200,.12);border:1px solid rgba(140,163,200,.22);}
.rep-tag.rp-known{color:#6E9B8B;background:rgba(110,155,139,.12);border:1px solid rgba(110,155,139,.22);}
.rep-tag.rp-backed{color:#7B8FA3;background:rgba(123,143,163,.12);border:1px solid rgba(123,143,163,.22);}
.rep-tag.rp-suspect{color:#E07B39;background:rgba(224,123,57,.12);border:1px solid rgba(224,123,57,.22);}
.rep-tag.rp-banned{color:#B0413A;background:rgba(176,65,58,.12);border:1px solid rgba(176,65,58,.22);}

/* 变动高亮（样貌/穿着/随身有变 → 警戒橙闪） */
.self-row.changed{
  animation:flash-up 1.2s ease;
  background:rgba(192,87,46,.07);
}

/* ═══════════════════════════════════════════════════════════════════
   3. NPC 状态栏 .dl-npc-bar —— 幸存者名册（每轮必出全部在场角色）
   一行4段：npc-name名/npc-job岗位/npc-hp HP条(i.npc-hp-bar)/npc-status状态
   ═══════════════════════════════════════════════════════════════════ */
.dl-npc-bar{
  width:100%;max-width:none;margin:6px auto 0;box-sizing:border-box;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  background:#141820;
  border:1px solid rgba(192,87,46,.30);
  border-top:2px solid rgba(123,143,163,.6);   /* 校服蓝灰发丝线 */
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 1px 3px rgba(0,0,0,.5),0 1px 1px rgba(0,0,0,.4);
  color:#F2F4F7;
  position:relative;
  transition:border-color .25s,box-shadow .25s;
}
/* 名册底纹：细横线（登记表） */
.dl-npc-bar::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background-image:repeating-linear-gradient(90deg,transparent 0 47px,rgba(140,163,200,.06) 47px 48px);
}
.dl-npc-bar:hover{
  border-color:rgba(123,143,163,.5);
  box-shadow:0 5px 16px rgba(0,0,0,.55),0 0 0 1px rgba(192,87,46,.16);
}
/* 折叠头 summary —— 名册封签 */
.dl-npc-bar>summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:center;gap:8px;
  padding:12px 16px;
  font-size:15px;font-weight:600;color:#F2F4F7;letter-spacing:1px;
  background:linear-gradient(90deg,rgba(123,143,163,.18),rgba(192,87,46,.06));
  border-bottom:1px solid rgba(192,87,46,.14);
  user-select:none;position:relative;z-index:1;
}
.dl-npc-bar>summary::-webkit-details-marker{display:none;}
.dl-npc-bar>summary::-moz-list-marker{display:none;}
.dl-npc-bar>summary .dl-npc-ic{font-size:17px;}
.dl-npc-bar:not([open])>summary{border-bottom:none;}

/* 名册行 —— 幸存者一行（名/岗位/HP条/心情+压力） */
.npc-row{
  display:flex;align-items:center;gap:10px;
  padding:7px 14px 7px 13px;
  border-bottom:1px solid rgba(192,87,46,.12);
  font-size:14px;line-height:1.45;
  position:relative;z-index:1;
}
.npc-row:last-child{border-bottom:none;}
/* 左缘细条 —— 校服蓝灰 */
.npc-row::before{
  content:'';position:absolute;left:0;top:6px;bottom:6px;
  width:3px;border-radius:0 3px 3px 0;
  background:rgba(123,143,163,.4);
}
/* 名 —— 主色粗体 */
.npc-name{
  font-weight:700;color:#E8A14B;
  min-width:52px;white-space:nowrap;font-size:14px;
}
/* 岗位 —— 小字灰 */
.npc-job{
  color:#A9B1BC;font-size:12px;
  flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
/* HP条：暗底轨道 + i.npc-hp-bar 医疗青渐变（width与数值一致） */
.npc-hp{
  display:inline-block;width:56px;height:5px;flex-shrink:0;
  background:rgba(0,0,0,.5);border-radius:3px;overflow:hidden;
  border:1px solid rgba(110,155,139,.28);
}
.npc-hp > .npc-hp-bar{
  display:block;height:100%;
  background:linear-gradient(90deg,#6E9B8B,#A3C9B8);
  border-radius:3px;transition:width .3s;
}
/* 状态 —— 心情+压力|标记（灰小字） */
.npc-status{
  color:#A9B1BC;font-size:12px;
  flex-shrink:0;font-variant-numeric:tabular-nums;
  max-width:38%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.npc-status em{font-style:normal;color:#E8A14B;font-weight:600;}
/* 触发压力事件/个人线 → 行高亮（蓝灰闪） */
.npc-row.changed{
  animation:flash-up 1.2s ease;
  background:rgba(123,143,163,.07);
}

/* ═══════════════════════════════════════════════════════════════════
   4. 交流对象卡片 .dl-rel-card —— 联络卡（对讲机信号圈 · 三层弧线）
   三行平铺：rc-name名 / rc-pose姿势(≤20字) / rc-mind心理(≤20字)
   ═══════════════════════════════════════════════════════════════════ */
.dl-rel-card{
  width:100%;max-width:none;margin:6px auto 0;box-sizing:border-box;
  position:relative;
  display:flex;flex-direction:column;gap:3px;
  padding:18px 34px 14px 18px;
  background:#15181D;
  border:1px solid rgba(192,87,46,.30);
  border-left:3px solid rgba(192,87,46,.65);    /* 血锈缘 */
  border-radius:12px;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  box-shadow:0 1px 3px rgba(0,0,0,.5),0 1px 1px rgba(0,0,0,.4);
  transition:border-color .25s,box-shadow .25s;
}
.dl-rel-card:hover{
  border-color:rgba(192,87,46,.45);
  box-shadow:0 5px 16px rgba(0,0,0,.55),0 0 0 1px rgba(192,87,46,.16);
}
/* 对讲机信号格（左上 · 三根短条） */
.dl-rel-card::before{
  content:'';position:absolute;left:8px;top:8px;width:8px;height:8px;
  background:
    linear-gradient(#E07B39,#E07B39) 0 0 / 2px 4px no-repeat,
    linear-gradient(#E07B39,#E07B39) 3px 0 / 2px 6px no-repeat,
    linear-gradient(#E07B39,#E07B39) 6px 0 / 2px 8px no-repeat;
  pointer-events:none;
}
/* 信号弧（右上 · 三层同心弧） */
.dl-rel-card::after{
  content:'';position:absolute;top:12px;right:14px;width:12px;height:12px;border-radius:50%;
  border:1.5px solid rgba(224,123,57,.6);
  box-shadow:0 0 0 4px rgba(224,123,57,.14),0 0 0 8px rgba(224,123,57,.07);
  pointer-events:none;
}
.dl-rel-card .rc-name{font-size:15px;font-weight:600;color:#F2F4F7;letter-spacing:.5px;}
.dl-rel-card .rc-pose{font-size:13.5px;color:#D4DAE1;line-height:1.5;}
.dl-rel-card .rc-mind{font-size:13.5px;color:#A9B1BC;line-height:1.5;}

/* ═══════════════════════════════════════════════════════════════════
   5. 行动选项 .dl-actions —— 频道指令（方角频道键 · 频道数字 · 信号点）
   每条=act-item(act-n序号键 + act-t文字)
   ═══════════════════════════════════════════════════════════════════ */
.dl-actions{
  width:100%;max-width:none;margin:10px auto 0;box-sizing:border-box;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  background:#15181D;
  border:1px solid rgba(192,87,46,.30);
  border-top:2px solid rgba(192,87,46,.55);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 1px 3px rgba(0,0,0,.5),0 1px 1px rgba(0,0,0,.4);
  transition:border-color .25s,box-shadow .25s;
}
.dl-actions:hover{
  border-color:rgba(192,87,46,.5);
  box-shadow:0 5px 16px rgba(0,0,0,.55),0 0 0 1px rgba(192,87,46,.16);
}
.dl-actions>summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:center;gap:8px;
  padding:14px 18px;
  font-size:15px;font-weight:600;color:#F2F4F7;letter-spacing:1px;
  background:linear-gradient(90deg,rgba(192,87,46,.16),rgba(123,143,163,.06));
  border-bottom:1px solid rgba(192,87,46,.14);
  user-select:none;
}
.dl-actions>summary::-webkit-details-marker{display:none;}
.dl-actions>summary::-moz-list-marker{display:none;}
.dl-actions>summary .dl-act-ic{font-size:17px;}
.dl-actions:not([open])>summary{border-bottom:none;}

/* 频道条目 —— act-item 直接为 details 子级（summary 除外） */
.act-item{
  display:flex;align-items:center;gap:12px;
  margin:6px 10px 0;
  padding:11px 14px;
  background:#1A1E24;
  border:1px solid rgba(192,87,46,.14);
  border-left:3px solid rgba(192,87,46,.45);
  border-radius:12px;
  transition:all .15s;
}
.act-item:last-of-type{margin-bottom:10px;}
/* 按下感：位移下沉 + 内阴影 */
.act-item:hover{
  background:linear-gradient(180deg,rgba(192,87,46,.13),rgba(192,87,46,.05));
  border-color:rgba(192,87,46,.28);
  border-left-color:rgba(192,87,46,.75);
  transform:translateY(2px);
  box-shadow:inset 0 2px 6px rgba(0,0,0,.55);
}
/* 频道键（方角 · 频道数字 · 信号点） */
.act-n{
  width:30px;height:30px;flex-shrink:0;border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  font-size:14px;font-weight:800;color:#F2F4F7;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  background:linear-gradient(180deg,#232830,#1A1E24);
  border:1px solid rgba(232,161,75,.5);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 2px 4px rgba(0,0,0,.5);
  position:relative;
}
/* 频道信号点 */
.act-n::before{
  content:'';position:absolute;right:3px;top:3px;width:5px;height:5px;border-radius:50%;
  border:1px solid rgba(224,123,57,.75);
  box-shadow:0 0 0 3px rgba(224,123,57,.12),0 0 0 6px rgba(224,123,57,.06);
  pointer-events:none;
}
/* 四色频道（1血污红·进攻 / 2警戒橙·试探 / 3医疗青·克制 / 4校服蓝灰·转折） */
.act-item:nth-of-type(1) .act-n{border-color:rgba(176,65,58,.6);}
.act-item:nth-of-type(2) .act-n{border-color:rgba(224,123,57,.6);}
.act-item:nth-of-type(3) .act-n{border-color:rgba(110,155,139,.6);}
.act-item:nth-of-type(4) .act-n{border-color:rgba(123,143,163,.6);}
.act-t{flex:1;font-size:15px;color:#F2F4F7;line-height:1.5;}

/* ═══════════════════════════════════════════════════════════════════
   6. 思维链 .dl-chain —— 战术推演（默认折叠 · 已匹配保留原样）
   ═══════════════════════════════════════════════════════════════════ */
.dl-chain{
  width:100%;max-width:none;margin:10px auto 0;box-sizing:border-box;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  background:#15181D;
  border:1px solid rgba(192,87,46,.30);
  border-top:2px solid rgba(192,87,46,.55);   /* 血锈线 */
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 1px 3px rgba(0,0,0,.5),0 1px 1px rgba(0,0,0,.4);
  transition:border-color .25s,box-shadow .25s;
}
.dl-chain:hover{
  border-color:rgba(192,87,46,.5);
  box-shadow:0 5px 16px rgba(0,0,0,.55),0 0 0 1px rgba(192,87,46,.16);
}
.dl-chain>summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 16px;
  font-size:15px;font-weight:600;color:#F2F4F7;letter-spacing:1px;
  background:linear-gradient(90deg,rgba(192,87,46,.14),rgba(123,143,163,.08));
  border-bottom:1px solid rgba(192,87,46,.14);
  user-select:none;
}
.dl-chain>summary::-webkit-details-marker{display:none;}
.dl-chain>summary::-moz-list-marker{display:none;}
.dl-chain>summary>span:first-child{display:inline-flex;align-items:center;gap:8px;}
/* 对讲机图标 */
.dl-chain .dl-chain-ic{
  width:30px;height:30px;border-radius:8px;flex-shrink:0;
  display:inline-flex;align-items:center;justify-content:center;font-size:16px;
  background:linear-gradient(180deg,#232830,#1A1E24);
  border:1px solid rgba(224,123,57,.5);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 1px 3px rgba(0,0,0,.5);
  position:relative;
}
/* 对讲机信号点 */
.dl-chain .dl-chain-ic::after{
  content:'';position:absolute;right:3px;top:3px;width:5px;height:5px;border-radius:50%;
  border:1px solid rgba(224,123,57,.8);
  box-shadow:0 0 0 3px rgba(224,123,57,.12);
  pointer-events:none;
}
.dl-chain .dl-chain-arrow{font-size:12px;color:#A9B1BC;transition:transform .2s;}
.dl-chain[open]>summary .dl-chain-arrow{transform:rotate(180deg);}
.dl-chain:not([open])>summary{border-bottom:none;}
/* 战术推演正文区：战术网格 + 虚线分界 */
.dl-chain-body{
  padding:14px 18px;
  font-size:13.5px;line-height:1.7;color:#D4DAE1;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  white-space:pre-wrap;word-break:break-word;
  background:#12151A;
  border-top:1px dashed rgba(192,87,46,.3);
  max-height:60vh;overflow-y:auto;scrollbar-width:thin;
}
.dl-chain-body::-webkit-scrollbar{width:4px;}
.dl-chain-body::-webkit-scrollbar-thumb{background:rgba(192,87,46,.30);border-radius:2px;}

/* ═══════════════════════════════════════════════════════════════════
   7. 小总结/大总结 .dl-summary —— 作战日志·信纸
   小总结(医疗青装订)每轮必出 · 每6轮追加独立大总结(校服蓝灰装订)
   警示废土母题 · 默认折叠 · 累积式
   ═══════════════════════════════════════════════════════════════════ */
.dl-summary{
  width:100%;max-width:none;margin:10px auto 0;box-sizing:border-box;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  background:#161A20;
  border:1px solid rgba(192,87,46,.30);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 1px 3px rgba(0,0,0,.5),0 1px 1px rgba(0,0,0,.4);
  color:#F2F4F7;
  transition:border-color .25s,box-shadow .25s;
}
.dl-summary:hover{
  border-color:rgba(192,87,46,.5);
  box-shadow:0 5px 16px rgba(0,0,0,.55),0 0 0 1px rgba(192,87,46,.16);
}
/* 折叠头 —— 作战日志信纸（左侧圆孔 + 虚线缝线） */
.dl-summary>summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:center;gap:8px;
  padding:12px 16px 12px 26px;
  font-size:15px;font-weight:600;color:#F2F4F7;letter-spacing:1px;
  background:linear-gradient(90deg,rgba(192,87,46,.16),rgba(123,143,163,.08));
  border-bottom:1px solid rgba(192,87,46,.14);
  user-select:none;position:relative;
}
.dl-summary>summary::-webkit-details-marker{display:none;}
.dl-summary>summary::-moz-list-marker{display:none;}
/* 装订圆孔 */
.dl-summary>summary::before{
  content:'';position:absolute;left:6px;top:50%;transform:translateY(-50%);
  width:8px;height:24px;pointer-events:none;
  background-image:radial-gradient(circle at 4px 6px,#07090B 0 2.5px,transparent 3px);
  background-size:8px 12px;background-repeat:repeat-y;
}
/* 虚线缝线 */
.dl-summary>summary::after{
  content:'';position:absolute;left:17px;top:10px;bottom:10px;width:0;
  border-left:1px dashed rgba(192,87,46,.32);
  pointer-events:none;
}
.dl-summary>summary .sum-ic{font-size:17px;}
.dl-summary:not([open])>summary{border-bottom:none;}
/* 日志正文区 */
.sum-body{padding:8px;display:flex;flex-direction:column;gap:6px;}

/* ── 小总结：作战日志 · 医疗青装订 ── */
.dl-summary-small{
  background:#15181D;
  border:1px solid rgba(192,87,46,.30);
  border-top:2px solid rgba(110,155,139,.6);   /* 医疗青发丝线 */
}
.dl-summary-small:hover{border-color:rgba(110,155,139,.5);box-shadow:0 5px 16px rgba(0,0,0,.55),0 0 0 1px rgba(192,87,46,.16);}
.dl-summary-small>summary{background:linear-gradient(90deg,rgba(110,155,139,.18),rgba(123,143,163,.06));}
/* 小结行 —— 与自身栏同款扁平：序号灰小字 + 内容白字 · 虚线分隔 */
.dl-summary-small .sum-row{
  display:flex;gap:10px;align-items:flex-start;
  padding:8px 15px 8px 14px;
  border-bottom:1px dashed rgba(192,87,46,.18);
  font-size:14px;line-height:1.5;
  background:transparent;
}
.dl-summary-small .sum-row:last-child{border-bottom:none;}
.dl-summary-small .sum-body{gap:0;padding:6px 0;}
/* 序号 —— 战灰小字（与 self-label 同款） */
.dl-summary-small .sum-label{
  color:#A9B1BC;flex-shrink:0;font-weight:700;font-size:12px;
  min-width:24px;white-space:nowrap;letter-spacing:1px;font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  padding-top:2px;
}
.dl-summary-small .sum-val{flex:1;color:#F2F4F7;line-height:1.5;}
.dl-summary-small .sum-val em{font-style:normal;color:#E8A14B;font-weight:600;}

/* ── 大总结：阶段回顾 · 校服蓝灰装订 ── */
.dl-summary-large{
  background:#15181D;
  border:1px solid rgba(192,87,46,.30);
  border-top:2px solid rgba(123,143,163,.6);   /* 校服蓝灰发丝线 */
}
.dl-summary-large:hover{border-color:rgba(123,143,163,.5);box-shadow:0 5px 16px rgba(0,0,0,.55),0 0 0 1px rgba(192,87,46,.16);}
.dl-summary-large>summary{background:linear-gradient(90deg,rgba(123,143,163,.18),rgba(192,87,46,.06));}
.dl-summary-large .sum-section{
  padding:11px 14px;
  background:#161A20;
  border:1px solid rgba(123,143,163,.16);
  border-radius:12px;
  transition:all .15s;
}
.dl-summary-large .sum-section:hover{
  background:linear-gradient(180deg,rgba(123,143,163,.12),rgba(192,87,46,.05));
  border-color:rgba(123,143,163,.28);
}
.dl-summary-large .sum-sec-title{
  font-size:12px;font-weight:700;color:#7B8FA3;
  letter-spacing:2px;margin-bottom:6px;
  display:flex;align-items:center;gap:8px;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
}
.dl-summary-large .sum-sec-title::before{content:'';width:3px;height:12px;border-radius:2px;background:#7B8FA3;flex-shrink:0;}
.dl-summary-large .sum-sec-body{font-size:13.5px;line-height:1.6;color:#F2F4F7;}
.dl-summary-large .sum-sec-body em{font-style:normal;color:#E8B04B;font-weight:600;padding:0 2px;}
.dl-summary-large .sum-sec-body .delta-up{color:#6E9B8B;font-weight:600;}
.dl-summary-large .sum-sec-body .delta-down{color:#B0413A;font-weight:600;}

/* ═══════════════════════════════════════════════════════════════════
   8. 主线状态栏 .dl-quest-bar —— 广播简报（触发后常驻 · 已匹配保留原样）
   ═══════════════════════════════════════════════════════════════════ */
.dl-quest-bar{
  width:100%;max-width:none;margin:8px auto 4px;box-sizing:border-box;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  background:#141820;
  border:1px solid rgba(192,87,46,.5);
  border-radius:12px;
  padding:14px 18px 14px 30px;
  display:flex;align-items:center;gap:14px;
  font-size:14px;
  box-shadow:0 1px 3px rgba(0,0,0,.5),0 1px 1px rgba(0,0,0,.4);
  position:relative;
}
/* 警示斜条纹（血手印警戒斜纹 · 左缘） */
.dl-quest-bar::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:11px;
  background:repeating-linear-gradient(45deg,#E8B04B 0 6px,#0C0E11 6px 12px);
  border-radius:12px 0 0 12px;
  pointer-events:none;
}
/* 信号弧（右上角标） */
.dl-quest-bar::after{
  content:'';position:absolute;top:10px;right:12px;width:9px;height:9px;border-radius:50%;
  border:1px solid rgba(224,123,57,.85);
  box-shadow:0 0 0 3px rgba(224,123,57,.16),0 0 0 6px rgba(224,123,57,.08);
  pointer-events:none;
}
.dl-quest-bar .qb-ic{font-size:26px;flex-shrink:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4));}
.dl-quest-bar .qb-c{flex:1;min-width:0;}
.dl-quest-bar .qb-title{font-size:17px;font-weight:700;color:#E8A14B;margin-bottom:4px;letter-spacing:2px;}
.dl-quest-bar .qb-stage{font-size:12px;color:#E8B04B;margin-bottom:6px;font-weight:600;letter-spacing:1px;}
.dl-quest-bar .qb-next{font-size:13.5px;color:#D4DAE1;line-height:1.5;}
.dl-quest-bar .qb-next .qb-hint{color:#E8B04B;font-weight:600;}
.dl-quest-bar .qb-pbar{
  width:64px;height:6px;flex-shrink:0;
  background:rgba(0,0,0,.45);border-radius:3px;overflow:hidden;
  border:1px solid rgba(224,123,57,.3);
}
.dl-quest-bar .qb-pbar i{display:block;height:100%;background:#E07B39;border-radius:3px;box-shadow:0 0 6px rgba(224,123,57,.65);}
.dl-quest-bar.qb-hidden{display:none;}

/* ═══════════════════════════════════════════════════════════════════
   9. 基地面板 .dl-camp-panel —— 基地控制台（本卡专属 · 每轮必出）
   cp-header大标题行(cp-title+cp-day) → cp-row×N(每行两组 label/value) → cp-warn预告条
   类名与后置词一一对应 · 控制台屏（深色屏幕 · 内部细网格 · cp-mode模式徽章）
   ═══════════════════════════════════════════════════════════════════ */
.dl-camp-panel{
  --camp-bad:#B0413A;      /* 血污红 · 威胁 */
  --camp-bad-deep:#6E2622; /* 深血 · 危机 */
  --camp-sane:#6E9B8B;     /* 医疗青 · 稳定 */
  width:100%;max-width:none;margin:8px auto 0;box-sizing:border-box;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  background:#12151A;
  border:1px solid rgba(192,87,46,.30);
  border-top:2px solid rgba(192,87,46,.75);   /* 血锈红控制台线 */
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 1px 3px rgba(0,0,0,.5),0 1px 1px rgba(0,0,0,.4);
  color:#F2F4F7;
  position:relative;
  transition:border-color .25s,box-shadow .25s;
}
.dl-camp-panel:hover{
  border-color:rgba(192,87,46,.5);
  box-shadow:0 5px 16px rgba(0,0,0,.55),0 0 0 1px rgba(192,87,46,.16);
}
.dl-camp-panel>summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:center;gap:8px;
  padding:12px 16px;
  font-size:15px;font-weight:600;color:#F2F4F7;letter-spacing:1px;
  background:linear-gradient(90deg,rgba(192,87,46,.2),rgba(123,143,163,.1));
  border-bottom:1px solid rgba(192,87,46,.14);
  user-select:none;
}
.dl-camp-panel>summary::-webkit-details-marker{display:none;}
.dl-camp-panel>summary::-moz-list-marker{display:none;}
.dl-camp-panel>summary .cp-ic{font-size:17px;}
/* 模式徽章（日常蓝灰 / 私密红闪） */
.dl-camp-panel>summary .cp-mode{
  margin-left:auto;flex-shrink:0;
  display:inline-flex;align-items:center;
  padding:2px 9px;border-radius:12px;
  font-size:12px;font-weight:700;letter-spacing:.5px;
  color:#B9C6E4;
  background:rgba(123,143,163,.12);
  border:1px solid rgba(123,143,163,.38);
}
.dl-camp-panel>summary .cp-mode.is-intimate{
  color:#E8A6A0;
  background:rgba(176,65,58,.14);
  border-color:rgba(176,65,58,.5);
  animation:warn-blink 1.6s ease-in-out infinite;
}
.dl-camp-panel:not([open])>summary{border-bottom:none;}
.dl-camp-panel:has(.cp-warn){border-top-color:rgba(224,123,57,.9);}

/* 大标题行：cp-title主色加粗 + cp-day灰字 */
.dl-camp-panel .cp-header{
  display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;
  padding:11px 14px 4px;
}
.dl-camp-panel .cp-title{
  font-size:17px;font-weight:700;color:#F2F4F7;
  letter-spacing:1px;
}
.dl-camp-panel .cp-day{
  font-size:12px;color:#A9B1BC;letter-spacing:.5px;
  margin-left:auto;white-space:nowrap;
}
/* 数据行：每行两组 label/value（四列网格对齐） */
.dl-camp-panel .cp-row{
  display:grid;
  grid-template-columns:auto 1fr auto 1fr;
  gap:3px 12px;align-items:center;
  padding:6px 14px;
  border-bottom:1px solid rgba(192,87,46,.14);
}
/* 标签 —— 战灰小字 */
.dl-camp-panel .cp-label{
  font-size:12px;color:#A9B1BC;letter-spacing:1px;font-weight:700;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  white-space:nowrap;
}
/* 值 —— 灰白主色字 */
.dl-camp-panel .cp-value{
  font-size:14.5px;color:#F2F4F7;line-height:1.5;font-weight:600;
  word-break:break-word;
}
/* 当夜预告条（橙色警示底 · em 血污红） */
.dl-camp-panel .cp-warn{
  display:flex;align-items:flex-start;gap:7px;
  margin:8px 10px 10px;
  padding:8px 11px;
  font-size:13px;line-height:1.55;color:#D4DAE1;
  background:#1E232B;
  border:1px dashed rgba(224,123,57,.55);
  border-radius:12px;
}
.dl-camp-panel .cp-warn em{font-style:normal;color:#E8A6A0;font-weight:700;}
.dl-camp-panel .cp-warn-ic{font-size:13px;flex-shrink:0;}

/* ═══════════════════════════════════════════════════════════════════
   10. 系统提示 .dl-sys-note —— 夜袭警报框（已匹配保留原样）
   夜袭结算/资源归零/规则生效/结局提示等机械提示统一入框 · 淡底细边不抢正文
   血锈红左缘 · 警报小标签 · 正文灰白
   ═══════════════════════════════════════════════════════════════════ */
.dl-sys-note{
  width:100%;max-width:none;margin:10px auto 0;box-sizing:border-box;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  background:#1A1E24;   /* 淡底 · 低调 */
  border:1px solid rgba(176,65,58,.24);        /* 细边 */
  border-left:3px solid rgba(176,65,58,.6);    /* 血锈红左缘 */
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 1px 3px rgba(0,0,0,.5),0 1px 1px rgba(0,0,0,.4);
  transition:border-color .25s,box-shadow .25s;
}
.dl-sys-note:hover{
  border-color:rgba(176,65,58,.38);
  box-shadow:0 5px 16px rgba(0,0,0,.55),0 0 0 1px rgba(192,87,46,.16);
}
/* 头行：警报小盘 + 「系统提示」小标签 + 折叠箭头 */
.dl-sys-note>summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:center;gap:9px;
  padding:9px 16px;
  user-select:none;
}
.dl-sys-note>summary::-webkit-details-marker{display:none;}
.dl-sys-note>summary::-moz-list-marker{display:none;}
/* 警报小盘图标 */
.dl-sys-note>summary .dl-sn-ic{
  width:22px;height:22px;border-radius:6px;flex-shrink:0;
  display:inline-flex;align-items:center;justify-content:center;font-size:12px;
  background:linear-gradient(180deg,#1D2126,#15181D);
  border:1px solid rgba(176,65,58,.5);
}
/* 「系统提示」小标签（警报封签） */
.dl-sys-note>summary .dl-sn-tag{
  display:inline-flex;align-items:center;
  padding:1px 9px;border-radius:10px;
  font-size:12px;font-weight:700;letter-spacing:2px;
  color:#E8A6A0;font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  background:rgba(176,65,58,.13);
  border:1px solid rgba(176,65,58,.3);
}
/* 折叠箭头 */
.dl-sys-note>summary .dl-sn-arrow{
  font-size:11px;color:#A9B1BC;margin-left:auto;transition:transform .2s;
}
.dl-sys-note[open]>summary .dl-sn-arrow{transform:rotate(180deg);}
.dl-sys-note[open]>summary{border-bottom:1px dashed rgba(176,65,58,.2);}
/* 正文：灰白 · 短句单行 */
.dl-sys-note .dl-sn-body{
  padding:4px 16px 12px;
  font-size:14px;line-height:1.65;color:#F2F4F7;
  word-break:break-word;
}
.dl-sys-note .dl-sn-body em{font-style:normal;color:#E8B04B;font-weight:600;}

/* ═══════════════════════════════════════════════════════════════════
   10.5 判定面板 .dl-verdict —— 战斗胜负/搜刮三档 命运判定（常驻）
   战斗：双方战力多维对比判胜负，实力相当D100随机裁定
   搜刮：结果=D100+搜刮修正，三档 成功200%/正常100%/失败50%
   血色暗底 · 血锈红重左缘 · 行结构照 self-row 平铺
   ═══════════════════════════════════════════════════════════════════ */
.dl-verdict{
  width:100%;max-width:none;margin:10px auto 0;box-sizing:border-box;
  font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;
  background:#1B1417;   /* 血色暗底 · 比sys-note重 */
  border:1px solid rgba(192,87,46,.38);
  border-left:4px solid #C0572E;   /* 血锈红重左缘 */
  border-radius:12px;overflow:hidden;
  box-shadow:0 1px 3px rgba(0,0,0,.5),0 0 0 1px rgba(192,87,46,.08);
  transition:border-color .25s,box-shadow .25s;
}
.dl-verdict:hover{
  border-color:rgba(224,123,57,.55);
  box-shadow:0 5px 16px rgba(0,0,0,.55),0 0 0 1px rgba(192,87,46,.2);
}
.dl-verdict>summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:center;gap:9px;
  padding:9px 16px;user-select:none;
  font-weight:800;letter-spacing:1px;color:#F2F4F7;font-size:14px;
}
.dl-verdict>summary::-webkit-details-marker{display:none;}
.dl-verdict>summary::-moz-list-marker{display:none;}
.dl-verdict>summary .dl-vd-ic{
  width:24px;height:24px;border-radius:6px;flex-shrink:0;
  display:inline-flex;align-items:center;justify-content:center;font-size:13px;
  background:linear-gradient(180deg,#24181A,#181012);
  border:1px solid rgba(192,87,46,.6);
  box-shadow:0 0 8px rgba(192,87,46,.2);
}
.dl-verdict>summary .dl-vd-tag{
  display:inline-flex;align-items:center;
  padding:1px 9px;border-radius:10px;font-size:11px;font-weight:700;letter-spacing:2px;
  color:#E8A14B;background:rgba(192,87,46,.14);border:1px solid rgba(192,87,46,.34);
  margin-left:auto;
}
.dl-verdict>summary .dl-vd-arrow{font-size:11px;color:#A9B1BC;transition:transform .2s;}
.dl-verdict[open]>summary .dl-vd-arrow{transform:rotate(180deg);}
.dl-verdict[open]>summary{border-bottom:1px dashed rgba(192,87,46,.24);}
/* 判定行 —— 照 self-row 平铺（label + value） */
.dl-verdict .vd-row{
  display:flex;align-items:flex-start;gap:12px;
  padding:7px 15px 7px 14px;
  border-bottom:1px dashed rgba(192,87,46,.16);
  font-size:13.5px;line-height:1.5;
}
.dl-verdict .vd-row:last-child{border-bottom:none;}
.dl-verdict .vd-label{
  color:#E8A14B;flex-shrink:0;font-weight:700;font-size:12px;
  min-width:64px;white-space:nowrap;letter-spacing:1px;padding-top:1px;
}
.dl-verdict .vd-value{color:#F2F4F7;flex:1;word-break:break-word;font-size:13.5px;line-height:1.55;}
.dl-verdict .vd-value em{font-style:normal;color:#E8A14B;font-weight:600;}
.dl-verdict .vd-value .vd-win{color:#6E9B8B;font-weight:700;}
.dl-verdict .vd-value .vd-lose{color:#B0413A;font-weight:700;}
.dl-verdict .vd-value .vd-tie{color:#E8B04B;font-weight:700;}

/* ═══════════════════════════════════════════════════════════════════
   11. 响应式 @media (max-width:480px)
   ═══════════════════════════════════════════════════════════════════ */
@media (max-width:480px){
  .status-bar{grid-template-columns:1fr 1fr;padding:3px;}
  .st-cell{padding:10px 12px;gap:4px;border-radius:14px;}
  .st-content{font-size:14px;}
  .st-progress{width:48px;height:5px;}

  .self-row{padding:7px 12px 7px 11px;gap:8px;font-size:13px;}
  .self-label{font-size:11px;min-width:40px;}
  .self-value{font-size:13px;}

  .npc-row{padding:6px 12px 6px 11px;gap:6px;font-size:13px;}
  .npc-name{min-width:40px;font-size:13px;}
  .npc-job{font-size:11.5px;}
  .npc-hp{width:44px;height:4px;}
  .npc-status{font-size:11px;max-width:34%;}

  .dl-rel-card{padding:16px 30px 12px 14px;gap:3px;}
  .dl-rel-card .rc-name{font-size:14px;}
  .dl-rel-card .rc-pose,.dl-rel-card .rc-mind{font-size:12.5px;}

  .dl-self>summary,.dl-npc-bar>summary,.dl-actions>summary,.dl-chain>summary,.dl-summary>summary,
  .dl-camp-panel>summary{
    padding:11px 14px;font-size:14px;
  }
  .dl-summary>summary{padding:11px 14px 11px 24px;font-size:14px;}
  .act-item{padding:10px 12px;font-size:13px;}
  .act-t{font-size:14px;}
  .dl-chain-body{padding:12px 14px;font-size:13px;line-height:1.6;}
  .dl-summary{margin:8px auto 0;}
  .sum-body{padding:6px;gap:5px;}
  .dl-summary-small .sum-row{padding:9px 12px;font-size:13px;gap:10px;}
  .dl-summary-large .sum-section{padding:9px 12px;}

  .dl-quest-bar{padding:12px 14px 12px 28px;gap:10px;}
  .dl-quest-bar .qb-ic{font-size:22px;}
  .dl-quest-bar .qb-title{font-size:16px;}
  .dl-quest-bar .qb-next{font-size:13px;}

  .dl-camp-panel .cp-header{padding:9px 12px 2px;}
  .dl-camp-panel .cp-title{font-size:15.5px;}
  .dl-camp-panel .cp-day{font-size:11px;}
  .dl-camp-panel .cp-row{padding:5px 12px;gap:2px 8px;}
  .dl-camp-panel .cp-label{font-size:11px;}
  .dl-camp-panel .cp-value{font-size:13.5px;}
  .dl-camp-panel .cp-warn{font-size:12.5px;padding:7px 9px;margin:7px 8px 8px;}

  .dl-sys-note{margin:8px auto 0;}
  .dl-sys-note>summary{padding:8px 13px;}
  .dl-sys-note .dl-sn-tag{font-size:11px;padding:1px 7px;}
  .dl-sys-note .dl-sn-body{padding:3px 13px 10px;font-size:13px;}
  .dl-verdict{margin:8px auto 0;}
  .dl-verdict>summary{padding:8px 13px;font-size:13px;}
  .dl-verdict .vd-row{padding:6px 12px;font-size:13px;}
  .dl-verdict .vd-label{font-size:11px;min-width:56px;}
}

/* ═══════════════════════════════════════════════════════════════════
   12. 无障碍 @media (prefers-reduced-motion:reduce)
   ═══════════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important;}
}

/* ═══════════════════════════════════════════════════════════════════
   13. 兜底 · 容器缺 color 的补浅色字（防文字落到平台默认深色看不清）
   ═══════════════════════════════════════════════════════════════════ */
.dl-actions,.act-item,.dl-rel-card,.dl-summary-small,.dl-summary-large,.dl-chain,.dl-sys-note{color:#F2F4F7;}
.dl-actions>summary,.dl-chain>summary,.dl-summary>summary{color:#F2F4F7;}
