
/* =========================================================
   重生模拟器｜回复 + 状态栏 内置CSS V1
   设计目标：
   1. 不依赖 JS
   2. 不依赖正则提取
   3. 不要求不同系统使用不同 CSS
   4. 所有颜色显式指定，避免酒馆主题串色
   5. <details> 原生折叠，移动端安全
   ========================================================= */

:root{
  --rs-bg:#0b0e16;
  --rs-panel:#111522;
  --rs-panel-2:#161b2b;
  --rs-panel-3:#0e121d;
  --rs-line:#2a3147;
  --rs-line-soft:#202638;
  --rs-text:#eef1f8;
  --rs-text-2:#c5cada;
  --rs-muted:#8f98ad;
  --rs-purple:#a993ff;
  --rs-purple-2:#7767e8;
  --rs-blue:#78c9ff;
  --rs-green:#83d7a7;
  --rs-yellow:#e6c47a;
  --rs-red:#ef8d96;
}

/* ---------- 总容器 ---------- */
.rs-reply{
  width:100%;
  max-width:980px;
  margin:0 auto;
  color:#eef1f8!important;
  font-family:Inter,"Microsoft YaHei","PingFang SC",system-ui,sans-serif!important;
  line-height:1.82;
  box-sizing:border-box;
}
.rs-reply *{box-sizing:border-box}

/* ---------- 剧情正文 ---------- */
.rs-story{
  position:relative;
  color:#eef1f8!important;
  background:
    radial-gradient(circle at 8% 0%,rgba(169,147,255,.08),transparent 28%),
    linear-gradient(180deg,#111522,#0f131e);
  border:1px solid #2a3147;
  border-radius:18px;
  padding:25px 27px;
  margin:0 0 14px;
  box-shadow:0 14px 38px rgba(0,0,0,.20);
  overflow:hidden;
}
.rs-story p{
  margin:0 0 1.05em!important;
  color:#eef1f8!important;
  font-size:15.5px!important;
  line-height:1.9!important;
}
.rs-story p:last-child{margin-bottom:0!important}
.rs-story strong,.rs-story b{color:#ffffff!important}
.rs-story em,.rs-story i{color:#d6cdfd!important}
.rs-story a{color:#78c9ff!important}
.rs-story hr{
  height:1px!important;border:0!important;background:#202638!important;
  margin:20px 0!important;
}

/* ---------- 系统消息：按需出现 ---------- */
.rs-system{
  position:relative;
  margin:0 0 14px;
  border:1px solid #4a4278;
  border-radius:15px;
  overflow:hidden;
  background:linear-gradient(145deg,#17162a,#111524);
  color:#eef1f8!important;
  box-shadow:0 10px 30px rgba(66,49,138,.12);
}
.rs-system-head{
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 15px;
  border-bottom:1px solid #373255;
  background:rgba(169,147,255,.065);
  color:#d9d1ff!important;
  font-size:11px!important;
  font-weight:800;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.rs-system-head::before{
  content:"◆";
  color:#a993ff;
  font-size:10px;
}
.rs-system-body{
  padding:15px 17px 16px;
  color:#c5cada!important;
  font-size:14px!important;
  line-height:1.7!important;
}
.rs-system-title{
  color:#fff!important;
  font-size:16px!important;
  font-weight:800;
  margin-bottom:7px;
}
.rs-system-row{
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding:6px 0;
  border-bottom:1px dashed #2b2d43;
}
.rs-system-row:last-child{border-bottom:0}
.rs-system-row span{color:#8f98ad!important}
.rs-system-row b{color:#e9e5ff!important;font-weight:700}

/* ---------- 行动建议 ---------- */
.rs-actions{
  margin:0 0 14px;
  padding:16px 17px 17px;
  background:#0f131e;
  border:1px solid #2a3147;
  border-radius:15px;
}
.rs-actions-title{
  color:#8f98ad!important;
  font-size:11px!important;
  font-weight:800;
  letter-spacing:.13em;
  margin-bottom:10px;
}
.rs-choice-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.rs-choice{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  padding:8px 11px;
  background:#161b2a;
  border:1px solid #30374d;
  border-radius:10px;
  color:#e4e8f3!important;
  font-size:13px!important;
  line-height:1.35!important;
  user-select:text;
}
.rs-choice:hover{
  border-color:#665d9c;
  background:#1b2032;
}
.rs-choice-no{
  color:#a993ff!important;
  font-size:10px!important;
  font-weight:900;
  letter-spacing:.05em;
}
.rs-free-action{
  color:#747e95!important;
  font-size:11.5px!important;
  margin-top:10px;
}

/* =========================================================
   状态栏
   ========================================================= */
.rs-status{
  background:linear-gradient(180deg,#101420,#0c1019);
  border:1px solid #2a3147;
  border-radius:18px;
  overflow:hidden;
  color:#eef1f8!important;
  box-shadow:0 18px 44px rgba(0,0,0,.25);
}

/* ---------- 人生顶栏 ---------- */
.rs-life{
  position:relative;
  padding:19px 21px 18px;
  border-bottom:1px solid #2a3147;
  background:
    radial-gradient(circle at 95% 10%,rgba(120,201,255,.08),transparent 30%),
    radial-gradient(circle at 0% 0%,rgba(169,147,255,.11),transparent 32%),
    #121625;
}
.rs-life-main{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}
.rs-name{
  color:#fff!important;
  font-size:22px!important;
  line-height:1.15!important;
  font-weight:900;
  letter-spacing:.01em;
}
.rs-identity{
  margin-top:5px;
  color:#aeb5c7!important;
  font-size:12.5px!important;
}
.rs-time{
  text-align:right;
  color:#939caf!important;
  font-size:11.5px!important;
  line-height:1.55!important;
}
.rs-badges{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:13px;
}
.rs-badge{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:5px 8px;
  border-radius:8px;
  background:#171c2b;
  border:1px solid #2d3449;
  color:#b8bfd0!important;
  font-size:11.5px!important;
}
.rs-badge b{color:#f0f2f8!important;font-weight:700}
.rs-badge.pace{border-color:#4c456f;color:#c9c0f5!important}

/* ---------- 主状态双栏 ---------- */
.rs-core{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  gap:12px;
  padding:12px;
  border-bottom:1px solid #2a3147;
}
.rs-card{
  min-width:0;
  background:#121725;
  border:1px solid #293149;
  border-radius:14px;
  padding:15px;
}
.rs-card-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-bottom:12px;
}
.rs-card-kicker{
  color:#7f879b!important;
  font-size:10px!important;
  font-weight:800;
  letter-spacing:.13em;
}
.rs-card-title{
  color:#f4f5fb!important;
  font-size:15px!important;
  font-weight:850;
  margin-top:2px;
}
.rs-stage{
  flex:0 0 auto;
  padding:5px 8px;
  border-radius:8px;
  border:1px solid #514b7b;
  background:#211e39;
  color:#cfc5ff!important;
  font-size:10.5px!important;
  font-weight:750;
}

/* ---------- 通用动态指标 ---------- */
.rs-stats{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
}
.rs-stat{
  min-width:0;
  padding:9px 10px;
  border-radius:10px;
  background:#0e121d;
  border:1px solid #232a3d;
}
.rs-stat span{
  display:block;
  color:#7f899f!important;
  font-size:10px!important;
  line-height:1.3!important;
  margin-bottom:4px;
}
.rs-stat b{
  display:block;
  color:#edf0f8!important;
  font-size:12.5px!important;
  font-weight:800;
  line-height:1.35!important;
  overflow-wrap:anywhere;
}

/* ---------- 解锁 / Progress ---------- */
.rs-next{
  margin-top:10px;
  padding-top:10px;
  border-top:1px dashed #2b3144;
}
.rs-next-label{
  color:#7f879b!important;
  font-size:10px!important;
  margin-bottom:4px;
}
.rs-next-text{
  color:#cfd4e1!important;
  font-size:12px!important;
  line-height:1.5!important;
}
.rs-progress{
  height:6px;
  margin-top:8px;
  overflow:hidden;
  border-radius:99px;
  background:#242a3a;
}
.rs-progress > i{
  display:block;
  height:100%;
  width:var(--rs-progress,0%);
  max-width:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#7767e8,#a993ff,#78c9ff);
}

/* ---------- 目标 ---------- */
.rs-objective{
  position:relative;
  padding:9px 0 9px 17px;
  border-bottom:1px solid #242a3c;
}
.rs-objective:last-child{border-bottom:0;padding-bottom:2px}
.rs-objective::before{
  content:"";
  position:absolute;
  left:1px;
  top:15px;
  width:6px;height:6px;border-radius:50%;
  background:#667089;
}
.rs-objective.long::before{background:#a993ff}
.rs-objective.current::before{background:#78c9ff}
.rs-objective.chance::before{background:#e6c47a}
.rs-objective small{
  display:block;
  color:#727d94!important;
  font-size:9.5px!important;
  font-weight:800;
  letter-spacing:.08em;
  margin-bottom:2px;
}
.rs-objective div{
  color:#d9deea!important;
  font-size:12.5px!important;
  line-height:1.45!important;
}
.rs-objective-note{
  color:#7f899e!important;
  font-size:10.5px!important;
  margin-top:3px;
}

/* ---------- 系统专属任务列表，仍是通用组件 ---------- */
.rs-issued{
  margin-top:11px;
  padding-top:10px;
  border-top:1px dashed #2b3144;
}
.rs-issued-title{
  color:#7f879b!important;
  font-size:10px!important;
  font-weight:800;
  letter-spacing:.08em;
  margin-bottom:6px;
}
.rs-task{
  display:grid;
  grid-template-columns:minmax(70px,.42fr) minmax(0,1.58fr) auto;
  gap:7px;
  align-items:center;
  padding:7px 0;
  border-bottom:1px solid #21273a;
  font-size:10.8px!important;
}
.rs-task:last-child{border-bottom:0}
.rs-task-person{color:#c7ccda!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rs-task-text{color:#aeb6c9!important;overflow-wrap:anywhere}
.rs-task-state{
  white-space:nowrap;
  padding:3px 6px;
  border-radius:6px;
  background:#1a2030;
  border:1px solid #30384f;
  color:#aab2c8!important;
  font-size:9.5px!important;
}
.rs-task-state.ok{border-color:#355b48;color:#8ed4aa!important;background:#13241c}
.rs-task-state.go{border-color:#454068;color:#c3b8f4!important;background:#1b1930}
.rs-task-state.bad{border-color:#623e46;color:#e49aa1!important;background:#26171b}

/* ---------- 原生折叠区 ---------- */
.rs-folds{padding:0 12px 12px}
.rs-fold{
  margin-top:8px;
  background:#101521;
  border:1px solid #283047;
  border-radius:11px;
  overflow:hidden;
}
.rs-fold > summary{
  position:relative;
  list-style:none;
  cursor:pointer;
  padding:11px 37px 11px 13px;
  color:#b8c0d2!important;
  font-size:11.5px!important;
  font-weight:750;
  user-select:none;
}
.rs-fold > summary::-webkit-details-marker{display:none}
.rs-fold > summary::after{
  content:"+";
  position:absolute;
  right:14px;top:50%;
  transform:translateY(-50%);
  color:#8075c7;
  font-size:16px;
  font-weight:500;
}
.rs-fold[open] > summary::after{content:"−"}
.rs-fold[open] > summary{border-bottom:1px solid #252c40}
.rs-fold-body{padding:8px 13px 11px}

/* ---------- 人物 ---------- */
.rs-person{
  display:grid;
  grid-template-columns:minmax(90px,.7fr) minmax(0,1.3fr) auto;
  gap:9px;
  align-items:center;
  padding:7px 0;
  border-bottom:1px solid #202638;
  font-size:11px!important;
}
.rs-person:last-child{border-bottom:0}
.rs-person b{color:#dce1ed!important}
.rs-person span{color:#7f899e!important}
.rs-relation{
  white-space:nowrap;
  padding:3px 6px;
  border-radius:6px;
  background:#171d2b;
  border:1px solid #30384f;
  color:#b9c0d2!important;
  font-size:9.5px!important;
}

/* ---------- 世界动态 ---------- */
.rs-news{
  position:relative;
  padding:7px 0 7px 13px;
  color:#aab2c5!important;
  font-size:11px!important;
  line-height:1.55!important;
  border-bottom:1px solid #202638;
}
.rs-news:last-child{border-bottom:0}
.rs-news::before{
  content:"•";
  position:absolute;
  left:1px;
  color:#7167ad;
}

/* ---------- 人生档案 ---------- */
.rs-archive-row{
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  gap:10px;
  padding:6px 0;
  border-bottom:1px solid #202638;
  font-size:10.8px!important;
}
.rs-archive-row:last-child{border-bottom:0}
.rs-archive-row span{color:#69758c!important}
.rs-archive-row div{color:#aeb6c8!important}

/* ---------- 空状态 ---------- */
.rs-empty{
  color:#667188!important;
  font-size:10.5px!important;
  padding:5px 0;
}

/* ---------- 手机 ---------- */
@media(max-width:720px){
  .rs-story{padding:20px 18px;border-radius:15px}
  .rs-story p{font-size:15px!important}
  .rs-core{grid-template-columns:1fr}
  .rs-life-main{display:block}
  .rs-time{text-align:left;margin-top:8px}
  .rs-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rs-task{grid-template-columns:72px minmax(0,1fr)}
  .rs-task-state{grid-column:2;justify-self:start}
  .rs-person{grid-template-columns:90px minmax(0,1fr)}
  .rs-relation{grid-column:2;justify-self:start}
}


/* =========================================================
   V1.1：完整可展开档案
   对齐《游戏呈现与交互设计规则》B层：
   人生经历 / 玩家能力 / 重要关系 / 资产产业基地 /
   系统详细进度 / 重大成就 / 已知世界信息
   ========================================================= */
.rs-archive-hub{
  margin-top:8px;
  border:1px solid #353052;
  border-radius:13px;
  overflow:hidden;
  background:linear-gradient(145deg,#141626,#10131e);
}
.rs-archive-hub > summary{
  position:relative;
  list-style:none;
  cursor:pointer;
  padding:13px 40px 13px 14px;
  color:#d7d1f1!important;
  font-size:12px!important;
  font-weight:850;
  letter-spacing:.02em;
  background:rgba(169,147,255,.045);
}
.rs-archive-hub > summary::-webkit-details-marker{display:none}
.rs-archive-hub > summary::after{
  content:"+";
  position:absolute;right:15px;top:50%;transform:translateY(-50%);
  color:#9e90ef;font-size:17px
}
.rs-archive-hub[open] > summary::after{content:"−"}
.rs-archive-hub[open] > summary{border-bottom:1px solid #302b49}
.rs-archive-hub-body{padding:8px}

.rs-subfold{
  margin:7px 0 0;
  border:1px solid #272e42;
  border-radius:10px;
  overflow:hidden;
  background:#0e121c;
}
.rs-subfold:first-child{margin-top:0}
.rs-subfold > summary{
  position:relative;
  list-style:none;
  cursor:pointer;
  padding:10px 34px 10px 12px;
  color:#adb5c8!important;
  font-size:11px!important;
  font-weight:760;
}
.rs-subfold > summary::-webkit-details-marker{display:none}
.rs-subfold > summary::after{
  content:"›";position:absolute;right:13px;top:50%;
  transform:translateY(-50%);color:#686f86;font-size:16px
}
.rs-subfold[open] > summary::after{transform:translateY(-50%) rotate(90deg)}
.rs-subfold[open] > summary{border-bottom:1px solid #22283a}
.rs-subfold-body{padding:8px 12px 10px}

.rs-skill-grid,.rs-asset-grid,.rs-system-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
}
.rs-mini{
  min-width:0;padding:8px 9px;border:1px solid #222a3e;border-radius:8px;background:#121725
}
.rs-mini span{
  display:block;color:#707b92!important;font-size:9.5px!important;margin-bottom:3px
}
.rs-mini b{
  display:block;color:#cdd3e0!important;font-size:11px!important;font-weight:750;
  line-height:1.4!important;overflow-wrap:anywhere
}
.rs-skill{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:7px 0;border-bottom:1px solid #202638;font-size:10.8px!important
}
.rs-skill:last-child{border-bottom:0}
.rs-skill b{color:#cbd1de!important}
.rs-skill span{color:#9289c7!important;font-weight:750}
.rs-rel-history{
  padding:7px 0;border-bottom:1px solid #202638
}
.rs-rel-history:last-child{border-bottom:0}
.rs-rel-history-top{
  display:flex;justify-content:space-between;gap:10px;font-size:10.8px!important
}
.rs-rel-history-top b{color:#d4d9e5!important}
.rs-rel-history-top span{color:#aaa1d9!important}
.rs-rel-history-note{
  margin-top:3px;color:#747f95!important;font-size:10px!important;line-height:1.5!important
}
.rs-achievement{
  position:relative;padding:7px 0 7px 18px;border-bottom:1px solid #202638
}
.rs-achievement:last-child{border-bottom:0}
.rs-achievement::before{
  content:"◆";position:absolute;left:1px;top:8px;color:#b19cff;font-size:8px
}
.rs-achievement b{display:block;color:#d7dce8!important;font-size:10.8px!important}
.rs-achievement span{display:block;margin-top:2px;color:#707b92!important;font-size:9.8px!important}
.rs-known{
  padding:7px 0;border-bottom:1px solid #202638;color:#aab2c5!important;
  font-size:10.7px!important;line-height:1.55!important
}
.rs-known:last-child{border-bottom:0}
.rs-unlocks{
  display:flex;flex-wrap:wrap;gap:6px;margin-top:7px
}
.rs-unlock{
  padding:4px 7px;border-radius:7px;border:1px solid #393553;
  background:#18172a;color:#bbb1ec!important;font-size:9.5px!important
}
@media(max-width:720px){
  .rs-skill-grid,.rs-asset-grid,.rs-system-detail-grid{grid-template-columns:1fr}
}


/* =========================================================
   V1.2：系统主卡增强
   主卡必须回答：
   1. 当前状态
   2. 当前权限
   3. 系统资源
   4. 下一阶段能做什么
   ========================================================= */

.rs-system-summary{
  margin:0 0 10px;
  padding:9px 10px;
  border:1px solid #2a3046;
  border-radius:10px;
  background:#0e121d;
  color:#aeb6c8!important;
  font-size:10.8px!important;
  line-height:1.55!important;
}

.rs-system-block{
  margin-top:11px;
  padding-top:10px;
  border-top:1px dashed #2b3144;
}
.rs-system-block:first-of-type{
  margin-top:0;
  padding-top:0;
  border-top:0;
}
.rs-system-block-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  color:#7e879b!important;
  font-size:9.8px!important;
  font-weight:850;
  letter-spacing:.11em;
  margin-bottom:7px;
}
.rs-system-block-title b{
  color:#9790c6!important;
  font-size:9.5px!important;
  font-weight:700;
  letter-spacing:0;
}

.rs-permissions{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.rs-permission{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:26px;
  padding:5px 8px;
  border-radius:8px;
  border:1px solid #3b3659;
  background:linear-gradient(145deg,#1a1930,#151827);
  color:#c5bced!important;
  font-size:9.8px!important;
  line-height:1.3!important;
}
.rs-permission::before{
  content:"✓";
  color:#8ed4aa;
  font-size:9px;
  font-weight:900;
}
.rs-permission.locked{
  border-color:#303548;
  background:#121621;
  color:#6f788c!important;
}
.rs-permission.locked::before{
  content:"◇";
  color:#596174;
}

.rs-system-resources{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
}
.rs-resource{
  padding:8px 9px;
  border:1px solid #252c40;
  border-radius:9px;
  background:#101521;
}
.rs-resource span{
  display:block;
  color:#737d92!important;
  font-size:9.3px!important;
  margin-bottom:3px;
}
.rs-resource b{
  display:block;
  color:#d6dbe7!important;
  font-size:11.3px!important;
  font-weight:800;
  line-height:1.35!important;
}

.rs-next-tier{
  margin-top:11px;
  border:1px solid #4a4274;
  border-radius:11px;
  overflow:hidden;
  background:
    radial-gradient(circle at 100% 0,rgba(120,201,255,.07),transparent 35%),
    linear-gradient(145deg,#18172b,#121523);
}
.rs-next-tier-head{
  padding:8px 10px;
  border-bottom:1px solid #342f52;
  color:#b9aefa!important;
  font-size:9.8px!important;
  font-weight:850;
  letter-spacing:.1em;
}
.rs-next-tier-body{
  padding:9px 10px 10px;
}
.rs-next-tier-name{
  color:#f0edff!important;
  font-size:12px!important;
  font-weight:850;
  margin-bottom:5px;
}
.rs-next-tier-desc{
  color:#aab2c5!important;
  font-size:10.3px!important;
  line-height:1.5!important;
}
.rs-next-tier-list{
  margin-top:7px;
  display:grid;
  gap:5px;
}
.rs-next-tier-item{
  position:relative;
  padding-left:13px;
  color:#939daf!important;
  font-size:9.8px!important;
  line-height:1.45!important;
}
.rs-next-tier-item::before{
  content:"→";
  position:absolute;
  left:0;
  color:#8f80e7;
}
.rs-upgrade-condition{
  margin-top:8px;
  padding-top:8px;
  border-top:1px dashed #37324f;
}
.rs-upgrade-condition-label{
  color:#727b90!important;
  font-size:9.2px!important;
  margin-bottom:4px;
}
.rs-upgrade-condition-text{
  color:#c0c6d5!important;
  font-size:10.2px!important;
  line-height:1.45!important;
}

.rs-system-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:9px;
}
.rs-system-meta-tag{
  padding:4px 7px;
  border:1px solid #2f354a;
  border-radius:7px;
  background:#111621;
  color:#818b9f!important;
  font-size:9.2px!important;
}
.rs-system-meta-tag b{
  color:#b8bfce!important;
  font-weight:700;
}

@media(max-width:720px){
  .rs-system-resources{grid-template-columns:1fr 1fr}
}


/* =========================================================
   V1.3：纵向状态栏 + 主要交互角色卡
   ========================================================= */

/* 系统与目标改为上下排布 */
.rs-core{
  display:block!important;
  padding:12px!important;
}
.rs-core > .rs-card{
  width:100%;
  margin:0 0 12px!important;
}
.rs-core > .rs-card:last-child{
  margin-bottom:0!important;
}

/* 主要交互角色 */
.rs-key-characters{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin-bottom:8px;
}
.rs-character-card{
  min-width:0;
  padding:11px;
  border:1px solid #2b3349;
  border-radius:11px;
  background:
    radial-gradient(circle at 100% 0%,rgba(169,147,255,.06),transparent 30%),
    #111622;
}
.rs-character-card.romance{
  border-color:#493c60;
  background:
    radial-gradient(circle at 100% 0%,rgba(217,126,181,.08),transparent 32%),
    linear-gradient(145deg,#171522,#111620);
}
.rs-character-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.rs-character-name{
  color:#edf0f8!important;
  font-size:12.5px!important;
  font-weight:850;
  line-height:1.3!important;
}
.rs-character-role{
  margin-top:3px;
  color:#7e899f!important;
  font-size:9.8px!important;
  line-height:1.45!important;
}
.rs-character-mark{
  flex:0 0 auto;
  padding:3px 6px;
  border-radius:6px;
  border:1px solid #4a3d5c;
  background:#211928;
  color:#d9a9ca!important;
  font-size:9px!important;
  font-weight:800;
}
.rs-character-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
  margin-top:9px;
}
.rs-character-field{
  min-width:0;
  padding:6px 7px;
  border:1px solid #232a3c;
  border-radius:7px;
  background:#0e121c;
}
.rs-character-field span{
  display:block;
  color:#6e788e!important;
  font-size:8.8px!important;
  margin-bottom:2px;
}
.rs-character-field b{
  display:block;
  color:#bfc6d6!important;
  font-size:10px!important;
  font-weight:750;
  line-height:1.35!important;
  overflow-wrap:anywhere;
}
.rs-character-note{
  margin-top:7px;
  padding-top:7px;
  border-top:1px dashed #292f42;
  color:#858fa4!important;
  font-size:9.6px!important;
  line-height:1.5!important;
}
.rs-character-flags{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-top:7px;
}
.rs-character-flag{
  padding:3px 6px;
  border-radius:6px;
  border:1px solid #333a4e;
  background:#141925;
  color:#8f98ac!important;
  font-size:8.8px!important;
}
.rs-character-flag.intimate{
  border-color:#513e58;
  background:#1f1721;
  color:#c99cb8!important;
}

/* 普通人物继续保留简表 */
.rs-person-divider{
  margin:10px 0 5px;
  color:#687389!important;
  font-size:9px!important;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}

/* 人物身体状态强调但不艳俗 */
.rs-body-good{color:#86cda4!important}
.rs-body-warn{color:#d9bd75!important}
.rs-body-bad{color:#e19098!important}

@media(max-width:720px){
  .rs-key-characters{grid-template-columns:1fr}
  .rs-character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* =========================================================
   V1.4 酒馆主题隔离修复
   原因：部分酒馆/网页主题会隔离或覆盖 :root CSS变量，
   导致使用 var(--rs-text) 的正文退回宿主默认深色。
   本版已将所有关键色值硬编码，并对正文/选项增加 text-fill 锁定。
   ========================================================= */

/* 正文：彻底禁止宿主主题把文字染回黑色 */
.rs-reply .rs-story,
.rs-reply .rs-story p,
.rs-reply .rs-story div,
.rs-reply .rs-story span,
.rs-reply .rs-story li{
  color:#eef1f8!important;
  -webkit-text-fill-color:#eef1f8!important;
  opacity:1!important;
}
.rs-reply .rs-story strong,
.rs-reply .rs-story b{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}
.rs-reply .rs-story em,
.rs-reply .rs-story i{
  color:#d6cdfd!important;
  -webkit-text-fill-color:#d6cdfd!important;
}
.rs-reply .rs-story a{
  color:#78c9ff!important;
  -webkit-text-fill-color:#78c9ff!important;
}

/* 行动建议：文字与编号各自锁色；编号不允许被压成两行 */
.rs-reply .rs-choice{
  color:#e4e8f3!important;
  -webkit-text-fill-color:#e4e8f3!important;
}
.rs-reply .rs-choice-no{
  flex:0 0 auto!important;
  min-width:18px!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  color:#a993ff!important;
  -webkit-text-fill-color:#a993ff!important;
}
.rs-reply .rs-free-action{
  color:#8f98ad!important;
  -webkit-text-fill-color:#8f98ad!important;
}

/* 常用区块基础文字色也使用绝对值，不再依赖宿主或 :root */
.rs-reply .rs-system,
.rs-reply .rs-actions,
.rs-reply .rs-status{
  color:#eef1f8!important;
}

/* 防止平台给文本附加透明/禁用态效果 */
.rs-reply .rs-story,
.rs-reply .rs-actions,
.rs-reply .rs-status{
  filter:none!important;
}


/* =========================================================
   V1.5 正文颜色“双保险”
   1) 超高优先级CSS覆盖宿主主题
   2) 配合V1.5模板中的段落内联!important作为最终兜底
   ========================================================= */

.rs-reply.rs-reply.rs-reply .rs-story.rs-story,
.rs-reply.rs-reply.rs-reply .rs-story.rs-story *{
  color:#f4f7ff!important;
  -webkit-text-fill-color:#f4f7ff!important;
  opacity:1!important;
  filter:none!important;
  mix-blend-mode:normal!important;
  text-shadow:none!important;
  -webkit-font-smoothing:antialiased!important;
}

.rs-reply.rs-reply.rs-reply .rs-story.rs-story strong,
.rs-reply.rs-reply.rs-reply .rs-story.rs-story b{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}

.rs-reply.rs-reply.rs-reply .rs-story.rs-story em,
.rs-reply.rs-reply.rs-reply .rs-story.rs-story i{
  color:#ddd5ff!important;
  -webkit-text-fill-color:#ddd5ff!important;
}

.rs-reply.rs-reply.rs-reply .rs-story.rs-story a{
  color:#86d1ff!important;
  -webkit-text-fill-color:#86d1ff!important;
}

/* 让正文层拥有自己的绘制上下文，减少宿主混合模式影响 */
.rs-reply .rs-story{
  isolation:isolate!important;
}