/* ═══════════════════════════════════════════════════════
   「白天没人」· 内置CSS (builtInCss) v1.0
   设计：白昼偷情 · 暖阳×禁忌 · 暖米底+午后暖橙主+禁忌暗红风险
   组件：仅 .dl-self / .dl-npc-bar / .dl-memory 三块 + 自检 .dl-chain
   纯CSS：details/summary + 兄弟选择器 · 零JS 零事件绑定
   ═══════════════════════════════════════════════════════ */

/* ── 0. 基础壳 + 设计令牌 ── */
.dl-self,.dl-npc-bar,.dl-memory{
  --dl-bg:#FFF6EC;        /* 暖米底 */
  --dl-card:#FFFBF3;      /* 奶油卡面 */
  --dl-main:#F5823D;      /* 午后暖橙·主 */
  --dl-hot:#C92A3A;       /* 禁忌暗红·强调/风险 */
  --dl-soft:#FFD9B8;      /* 浅杏描边 */
  --dl-text:#5A4635;      /* 暖棕字 */
  --dl-dim:#A08A70;       /* 次级 */
  --dl-dim2:#D2BCA0;      /* 弱化 */
  --dl-line:rgba(245,130,61,.40);   /* 暖橙描边 */
  --dl-line-soft:rgba(245,130,61,.16);
  --dl-blue:#7BA8FF;      /* rp-new 蓝 */
  --dl-green:#3FB87E;     /* rp-known 薄荷 */
  --dl-orange:#E85D3D;    /* rp-suspect 橙红 */
  --dl-gold:#F5B83D;      /* changed 明黄 */
  --dl-dot:rgba(245,184,61,.12);    /* 阳光半调 */
  --dl-font:-apple-system,'PingFang SC','Microsoft YaHei','Hiragino Sans GB',sans-serif;
  position:relative;box-sizing:border-box;
  width:100%;max-width:none;margin:10px auto 0;
  background:var(--dl-card);
  border:2px solid var(--dl-line);
  border-radius:16px;
  color:var(--dl-text);
  font-family:var(--dl-font);
  font-size:13px;
  box-shadow:3px 3px 0 rgba(245,130,61,.25);
  overflow:hidden;
  transition:transform .15s,border-color .2s;
}
.dl-self:hover,.dl-npc-bar:hover,.dl-memory:hover{
  border-color:var(--dl-main);
  transform:translateY(-1px);
}
/* 卡面阳光光斑 */
.dl-self::before,.dl-npc-bar::before,.dl-memory::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(var(--dl-dot) 1.4px,transparent 1.4px);
  background-size:14px 14px;
  opacity:.55;
}
.dl-s-row,.dl-n-row,.dl-mem-body{position:relative;}

/* ── 1. 通用卡头 summary（午后斜阳橙条）── */
.dl-self>summary,.dl-npc-bar>summary,.dl-memory>summary{
  list-style:none;cursor:pointer;user-select:none;
  display:flex;align-items:center;gap:10px;
  padding:11px 14px;
  font-size:12px;font-weight:900;letter-spacing:2px;
  background:
    repeating-linear-gradient(-45deg,rgba(255,255,255,.10) 0 10px,transparent 10px 20px),
    linear-gradient(135deg,#F5A34D,#F5823D);
  color:#fff;
  text-shadow:0 1px 0 rgba(0,0,0,.12);
}
.dl-self>summary::-webkit-details-marker,
.dl-npc-bar>summary::-webkit-details-marker,
.dl-memory>summary::-webkit-details-marker{display:none;}
.dl-self>summary em,.dl-npc-bar>summary em{
  font-style:normal;font-size:10px;font-weight:800;letter-spacing:1px;
  color:var(--dl-main);
  background:#fff;border:1px solid var(--dl-soft);
  padding:1px 8px;border-radius:20px;
}
/* 折叠箭头 */
.dl-self-arrow,.dl-npc-arrow,.dl-mem-arrow{
  margin-left:auto;font-size:10px;color:#fff;opacity:.9;
  transition:transform .2s;
}
.dl-self[open]>summary .dl-self-arrow{transform:rotate(180deg);}
.dl-npc-bar[open]>summary .dl-npc-arrow{transform:rotate(180deg);}
.dl-memory[open]>summary .dl-mem-arrow{transform:rotate(180deg);}

/* ── 1b. 自检一行折叠 .dl-chain（前置词里）── */
.dl-chain{
  --dl-card:#FFFBF3;--dl-main:#F5823D;--dl-text:#5A4635;--dl-dim:#A08A70;
  position:relative;box-sizing:border-box;
  width:100%;max-width:none;margin:6px auto 0;
  background:var(--dl-card);border:1.5px solid rgba(245,130,61,.30);border-radius:12px;
  color:var(--dl-text);font-family:-apple-system,'PingFang SC','Microsoft YaHei',sans-serif;
  font-size:11.5px;line-height:1.5;overflow:hidden;
  box-shadow:2px 2px 0 rgba(245,130,61,.20);
}
.dl-chain>summary{
  list-style:none;cursor:default;user-select:none;
  padding:6px 12px;color:var(--dl-main);font-weight:800;letter-spacing:.5px;
}
.dl-chain>summary::-webkit-details-marker{display:none;}
.dl-chain[open]>summary{padding-bottom:4px;border-bottom:1px dashed var(--dl-soft);}

/* ── 2. 自身状态栏 .dl-self（身份/窗口/关系/风险）── */
.dl-s-row{
  display:flex;align-items:center;gap:10px;
  padding:8px 14px 8px 13px;
  border-bottom:1px dashed var(--dl-line-soft);
  position:relative;
  font-size:12.5px;line-height:1.45;
}
.dl-s-row:last-child{border-bottom:none;}
/* 左缘色条：橙系分级 */
.dl-s-row::before{
  content:'';position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:0 2px 2px 0;
  background:var(--dl-main);opacity:.8;
}
.dl-s-row:nth-child(2)::before{background:var(--dl-hot);}
.dl-s-row:nth-child(3)::before{background:var(--dl-gold);}
.dl-s-row:nth-child(n+4)::before{background:var(--dl-dim2);}
.dl-s-ic{
  width:26px;height:26px;flex-shrink:0;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:13px;
  background:var(--dl-bg);
  border:1.5px solid var(--dl-soft);
  color:var(--dl-main);
}
.dl-self>summary .dl-s-ic{width:30px;height:30px;font-size:15px;}
.dl-s-l{
  color:var(--dl-dim);flex-shrink:0;min-width:36px;
  font-size:10px;font-weight:900;letter-spacing:1px;
}
.dl-s-v{
  flex:1;min-width:0;text-align:right;
  font-size:12.5px;color:var(--dl-text);line-height:1.45;word-break:break-word;
  font-variant-numeric:tabular-nums;
}
.dl-s-v em{font-style:normal;color:var(--dl-hot);font-weight:800;}

/* ── 3. 角色状态栏 .dl-npc-bar（名讳/反差/状态/关系·风险）── */
.dl-n-row{
  display:flex;align-items:center;gap:10px;
  padding:9px 14px 9px 13px;
  border-bottom:1px dashed var(--dl-line-soft);
  position:relative;
  font-size:12.5px;line-height:1.45;
}
.dl-n-row:last-child{border-bottom:none;}
/* 色条：名讳橙 / 性格暗红 / 穿着黄 / 状态橙红 */
.dl-n-row::before{
  content:'';position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:0 2px 2px 0;
}
.dl-n-row:nth-child(1)::before{background:var(--dl-main);}
.dl-n-row:nth-child(2)::before{background:var(--dl-hot);}
.dl-n-row:nth-child(3)::before{background:var(--dl-gold);}
.dl-n-row:nth-child(4)::before{background:var(--dl-orange);}
.dl-n-ic{
  width:26px;height:26px;flex-shrink:0;border-radius:9px;
  display:flex;align-items:center;justify-content:center;font-size:13px;
  background:var(--dl-bg);
  border:1.5px solid var(--dl-soft);
  color:var(--dl-main);
}
.dl-npc-bar>summary .dl-n-ic{width:30px;height:30px;font-size:15px;border-radius:10px;}
.dl-n-l{
  color:var(--dl-dim);flex-shrink:0;min-width:36px;
  font-size:10px;font-weight:900;letter-spacing:1px;
}
.dl-n-v{
  flex:1;min-width:0;text-align:right;
  font-size:12.5px;color:var(--dl-text);line-height:1.45;word-break:break-word;
}
.dl-n-v em{font-style:normal;color:var(--dl-hot);font-weight:800;}
.dl-n-v strong{font-style:normal;color:var(--dl-gold);font-weight:800;}

/* ── 4. 反差/进档标 set-tag（禁忌暗红实心）· 风险 rep-tag（马卡龙）── */
.set-tag{
  display:inline-flex;align-items:center;gap:5px;
  padding:2px 9px;border-radius:20px;
  font-size:10px;font-weight:900;letter-spacing:.5px;
  color:#fff;
  background:linear-gradient(135deg,#D84555,#C92A3A);
  box-shadow:0 0 0 2px #fff,0 0 0 3.5px var(--dl-soft),2px 2px 0 rgba(201,42,58,.25);
  transform:rotate(-1.5deg);
}
.set-tag::before{content:'☀';font-size:9px;color:#FFE3CE;}
.rep-tag{
  display:inline-block;padding:2px 9px;border-radius:20px;
  font-size:10px;font-weight:800;letter-spacing:.5px;
  background:#fff;border:1.5px solid var(--dl-soft);
}
.rep-tag.rp-new{color:var(--dl-blue);border-color:rgba(123,168,255,.45);background:#F0F5FF;}
.rep-tag.rp-known{color:#2FA36B;border-color:rgba(95,217,160,.5);background:#EFFBF4;}
.rep-tag.rp-suspect{color:#C0361F;border-color:rgba(232,93,61,.5);background:#FFF0EA;}
.rep-tag.rp-burst{color:#fff;border-color:#C92A3A;background:linear-gradient(135deg,#D84555,#C92A3A);}

/* ── 5. 变更行 changed 明黄高亮 ── */
.dl-s-row.changed,.dl-n-row.changed{
  background:linear-gradient(90deg,rgba(245,184,61,.18),transparent);
  box-shadow:inset 3px 0 0 var(--dl-gold);
  animation:dl-flash .9s ease;
}
.dl-s-row.changed .dl-s-v,.dl-n-row.changed .dl-n-v{color:#C08A12;font-weight:800;}
@keyframes dl-flash{0%{background-color:rgba(245,184,61,.4)}100%{background-color:transparent}}

/* ── 6. 记忆卡 .dl-memory（每轮必出·默认展开open）── */
.dl-memory>summary .dl-mem-tag{margin-bottom:0;}
.dl-mem-body{padding:9px;display:flex;flex-direction:column;gap:8px;}
.dl-mem-sec{
  padding:10px 12px;
  background:#fff;
  border:1.5px solid var(--dl-soft);
  border-radius:12px;
}
.dl-mem-tag{
  display:inline-flex;align-items:center;gap:6px;
  font-size:10px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase;
  margin-bottom:5px;color:var(--dl-main);
}
.dl-mem-tag::before{content:'☀';font-size:9px;color:var(--dl-hot);}
/* 三段配色：长记橙 / 短记暗红 / 下步黄 */
.dl-mem-sec:nth-child(1){border-left:3px solid var(--dl-main);}
.dl-mem-sec:nth-child(2){border-left:3px solid var(--dl-hot);}
.dl-mem-sec:nth-child(3){border-left:3px solid var(--dl-gold);}
.dl-mem-sec:nth-child(1) .dl-mem-tag{color:var(--dl-main);}
.dl-mem-sec:nth-child(2) .dl-mem-tag{color:var(--dl-hot);}
.dl-mem-sec:nth-child(3) .dl-mem-tag{color:#C08A12;}
.dl-mem-txt{font-size:12.5px;line-height:1.6;color:var(--dl-text);word-break:break-word;}
.dl-mem-txt em{font-style:normal;color:#C08A12;font-weight:800;}
.dl-mem-txt strong{font-style:normal;color:var(--dl-hot);font-weight:800;}

/* ── 响应式 ── */
@media (max-width:480px){
  .dl-self,.dl-npc-bar,.dl-memory,.dl-chain{margin:8px auto 0;border-radius:14px;}
  .dl-self>summary,.dl-npc-bar>summary,.dl-memory>summary{padding:10px 12px;font-size:11px;}
  .dl-s-row,.dl-n-row{padding:7px 12px 7px 11px;gap:8px;font-size:11.5px;}
  .dl-s-ic,.dl-n-ic{width:22px;height:22px;font-size:12px;}
  .dl-s-l,.dl-n-l{font-size:9px;min-width:30px;}
  .dl-s-v,.dl-n-v{font-size:11.5px;}
  .dl-mem-sec{padding:8px 10px;}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;}
}
