/* =============================================
   长生仙途 · 水墨仙山 · 四季色系
   base-hue:205  base-sat:12%  is-dark:0  accent-hue:165  accent-sat:45%
   bg-deep:hsl(205,15%,91%)    bg-default:hsl(205,13%,94%)
   bg-paper:hsl(205,10%,98%)   bg-raised:hsl(205,12%,88%)
   bg-hover:hsl(205,12%,83%)   text-main:hsl(210,18%,20%)
   text-sub:hsl(210,12%,42%)   text-muted:hsl(210,10%,56%)
   border:hsl(205,10%,80%)     accent:hsl(165,45%,40%)
   accent-dim:hsl(165,35%,90%) accent-text:hsl(165,50%,28%)
   glow:0 0 14px hsla(165,60%,50%,0.35)
   四季：春·樱花粉hsl(345,55%,62%) 夏·淡绿hsl(135,45%,52%) 秋·金黄hsl(45,70%,55%) 冬·蓝hsl(225,45%,52%)
   天赋六档：凡hsl(0,0%,52%) 黄hsl(200,40%,42%) 玄hsl(275,45%,52%)
            地hsl(38,65%,42%) 天hsl(0,65%,48%) 仙hsl(45,85%,45%)
   ============================================= */
/* ===== 危险区域 ===== */
[class*="bg-[#F1CBCB]"], [class*="bg-[#c9e1e9]"] { display: none !important; }
/* ===== Markdown 全局（浅色水墨） ===== */
.markdown-body {
  color: hsl(210,18%,20%) !important;
  background: transparent !important;
  line-height: 1.85 !important;
  font-size: 1rem !important;
}
.markdown-body h1, .markdown-body h2, .markdown-body h3 {
  color: hsl(210,18%,20%) !important;
  border-bottom: 1px solid hsl(205,10%,80%) !important;
  padding-bottom: .3em !important;
}
.markdown-body blockquote {
  border-left: 4px solid hsl(165,45%,40%) !important;
  background: hsl(165,35%,90%) !important;
  color: hsl(165,50%,28%) !important;
  padding: 8px 16px !important;
  margin: 12px 0 !important;
}
.markdown-body strong { color: hsl(165,50%,28%) !important; }
.markdown-body a { color: hsl(165,50%,28%) !important; }
.markdown-body pre {
  background: hsl(205,12%,94%) !important;
  border: 1px solid hsl(205,10%,80%) !important;
  border-radius: 6px !important;
  padding: .6em .9em !important;
  overflow-x: auto !important;
}
.markdown-body pre code {
  background: transparent !important;
  color: hsl(210,18%,20%) !important;
}
.markdown-body :not(pre)>code {
  background: hsl(165,35%,90%) !important;
  color: hsl(165,50%,28%) !important;
  padding: .15em .45em !important;
  border-radius: 4px !important;
}
.markdown-body details {
  background: hsl(205,10%,98%) !important;
  border: 1px solid hsl(205,10%,80%) !important;
  border-radius: 8px !important;
  margin: 8px 0 !important;
  overflow: hidden !important;
}
.markdown-body details[open] { border-color: hsl(165,45%,40%) !important; }
.markdown-body details summary {
  background: hsl(205,12%,90%) !important;
  color: hsl(210,18%,20%) !important;
  padding: 8px 12px 8px 32px !important;
  display: block !important;
  position: relative !important;
  border-bottom: 1px solid hsl(205,10%,80%) !important;
  cursor: pointer !important;
  font-weight: 600 !important;
  list-style: none !important;
  user-select: none !important;
}
.markdown-body details summary::before {
  content: '▶' !important;
  position: absolute !important;
  left: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  color: hsl(165,45%,40%) !important;
  font-size: 11px !important;
  transition: transform .2s ease !important;
}
.markdown-body details[open] summary::before { transform: translateY(-50%) rotate(90deg) !important; }
.markdown-body details summary::-webkit-details-marker { display: none !important; }
.markdown-body ::-webkit-scrollbar { width: 6px !important; height: 6px !important; }
.markdown-body ::-webkit-scrollbar-track { background: hsl(205,13%,94%) !important; }
.markdown-body ::-webkit-scrollbar-thumb { background: hsl(165,35%,82%) !important; border-radius: 3px !important; }
.markdown-body ::-webkit-scrollbar-thumb:hover { background: hsl(165,45%,40%) !important; }
.markdown-body ::selection {
  background: hsl(165,35%,82%) !important;
  color: hsl(210,18%,15%) !important;
}
/* ===== 聊天气泡 ===== */
.markdown-body .bg-gray-100\/90.relative.inline-block {
  background: hsl(205,10%,98%) !important;
  border: 1px solid hsl(205,10%,80%) !important;
  border-radius: 16px !important;
  padding: 12px !important;
}
/* ===== 底部输入 ===== */
#ai-chat-input {
  background: hsl(205,10%,98%) !important;
  color: hsl(210,18%,20%) !important;
  caret-color: hsl(165,45%,40%) !important;
}
#ai-chat-input::placeholder { color: hsl(210,10%,56%) !important; }
#ai-send-button {
  background: hsl(165,45%,40%) !important;
  color: #fff !important;
  border-radius: 8px !important;
}
/* ===== sc-year 年容器 ===== */
.sc-year {
  display: block;
  max-width: 760px;
  margin: 0 auto .7rem;
  padding: .55rem .65rem;
  border-radius: 12px;
  font-size: .95rem;
  line-height: 1.85;
  background: linear-gradient(180deg, hsl(205,10%,97%) 0%, hsl(205,12%,94%) 100%);
  border: 1px solid hsl(205,10%,80%);
  box-shadow: 0 2px 10px hsla(205,15%,60%,.12);
}
.sc-year::before {
  content: '⛰️ 长生仙途';
  display: block;
  text-align: center;
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-size: .72rem;
  letter-spacing: .3em;
  color: hsl(210,10%,55%);
  padding: .2rem 0 .4rem;
  border-bottom: 1px dotted hsl(205,10%,80%);
  margin-bottom: .5rem;
}
/* 开季色条 */
.sc-year-spring { border-top: 4px solid hsl(345,55%,62%); }
.sc-year-summer { border-top: 4px solid hsl(135,45%,52%); }
.sc-year-autumn { border-top: 4px solid hsl(45,70%,55%); }
.sc-year-winter { border-top: 4px solid hsl(225,45%,52%); }
/* 半年轮色条（默认轮）：ss=春·夏半年（樱花粉起）aw=秋·冬半年（秋黄起） */
.sc-year-half { border-top: 4px solid hsl(345,55%,62%); }
.sc-year-half.aw { border-top: 4px solid hsl(45,70%,55%); }
/* 时间跨度容器色条：quad=四个月·默认（青玉）month=每月（紫）full=一年（绯红）fast=三年（灰虚线） */
.sc-year-quad { border-top: 4px solid hsl(165,45%,48%); }
.sc-year-month { border-top: 4px solid hsl(265,40%,55%); }
.sc-year-full { border-top: 4px solid hsl(345,55%,55%); }
.sc-year-fast { border-top: 4px dashed hsl(210,10%,55%); }
/* ===== 年头 ===== */
.sc-year-hd {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 14px;
  padding: .6rem .9rem;
  margin-bottom: .5rem;
  border-radius: 10px;
  font-size: .84rem;
  font-weight: 600;
  background: linear-gradient(135deg, hsl(205,10%,99%), hsla(165,30%,95%,.9));
  border: 1px solid hsl(205,10%,80%);
  border-left: 5px solid hsl(165,45%,40%);
  box-shadow: 0 1px 4px hsla(165,40%,50%,.12);
  color: hsl(210,12%,42%);
}
.sc-year-icon { font-size: 1.05rem; }
.sc-year-label {
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-size: 1rem;
  letter-spacing: .05em;
  color: hsl(210,18%,20%);
}
.sc-year-hd .sc-date { font-weight: 700; color: hsl(165,50%,28%); }
.sc-year-hd .sc-era { font-size: .76rem; color: hsl(210,10%,56%); margin-left: auto; }
/* 年关「仙」字朱印 */
.sc-year-hd::after {
  content: '仙';
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-size: .86rem;
  font-weight: 900;
  line-height: 1.55rem;
  width: 1.55rem;
  height: 1.55rem;
  text-align: center;
  color: #fff;
  background: hsl(0,65%,48%);
  border-radius: 50%;
  transform: rotate(-10deg);
  box-shadow: 0 0 8px hsla(0,65%,50%,.4);
  flex-shrink: 0;
}
/* ===== 月份块（四季色系）· 无时间轴 ===== */
.sc-month {
  position: relative;
  display: block;
  margin: 0 0 .6rem 0;
  border-radius: 8px;
  background: hsl(205,10%,98%);
  border: 1px solid hsl(205,10%,82%);
  border-left: 3px solid hsl(165, 22%, 74%);
  box-shadow: 0 1px 3px hsla(205,15%,60%,.1);
}
.sc-mo-hd {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: .4rem .7rem;
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-size: .84rem;
  font-weight: 700;
  letter-spacing: .06em;
  border-bottom: 1px dotted hsl(205,10%,82%);
  background: hsl(205,12%,92%);
  border-radius: 9px 9px 0 0;
}
.sc-mo-icon { font-size: .95rem; }
.sc-mo-label { flex: 1; color: hsl(210,18%,25%); }
.sc-mo-note {
  font-family: 'PingFang SC','Microsoft YaHei','Noto Sans SC',sans-serif;
  font-size: .68rem;
  font-weight: 400;
  color: hsl(210,10%,56%);
}
/* —— 春 · 樱花粉（整块季节色·淡雅） —— */
.sc-month.spring {
  border: 1px solid hsl(345,40%,85%);
  border-left: 3px solid hsl(345,55%,62%);
  background: linear-gradient(135deg, hsl(345,50%,99%), hsl(345,40%,96%));
}
.sc-month.spring .sc-mo-hd { background: hsl(345,55%,90%); border-bottom-color: hsl(345,40%,80%); }
.sc-month.spring .sc-mo-label { color: hsl(345,50%,38%); }
.sc-month.spring .sc-mo-note { color: hsl(345,35%,55%); }
.sc-month.spring .sc-mo-icon { color: hsl(345,55%,45%); }
.sc-month.spring .sc-event { background: hsl(345,35%,99%); border-color: hsl(345,35%,87%); }
.sc-month.spring .sc-event .sc-ev-hd { background: hsl(345,35%,95%); border-bottom-color: hsl(345,30%,88%); }
/* —— 夏 · 淡绿（整块季节色·淡雅） —— */
.sc-month.summer {
  border: 1px solid hsl(135,40%,84%);
  border-left: 3px solid hsl(135,45%,52%);
  background: linear-gradient(135deg, hsl(135,50%,99%), hsl(135,40%,96%));
}
.sc-month.summer .sc-mo-hd { background: hsl(135,45%,90%); border-bottom-color: hsl(135,35%,80%); }
.sc-month.summer .sc-mo-label { color: hsl(135,45%,34%); }
.sc-month.summer .sc-mo-note { color: hsl(135,35%,52%); }
.sc-month.summer .sc-mo-icon { color: hsl(135,50%,42%); }
.sc-month.summer .sc-event { background: hsl(135,35%,99%); border-color: hsl(135,35%,86%); }
.sc-month.summer .sc-event .sc-ev-hd { background: hsl(135,35%,95%); border-bottom-color: hsl(135,30%,88%); }
/* —— 秋 · 金黄（整块季节色·淡雅） —— */
.sc-month.autumn {
  border: 1px solid hsl(45,55%,82%);
  border-left: 3px solid hsl(45,70%,55%);
  background: linear-gradient(135deg, hsl(45,60%,99%), hsl(45,50%,95%));
}
.sc-month.autumn .sc-mo-hd { background: hsl(45,60%,90%); border-bottom-color: hsl(45,50%,78%); }
.sc-month.autumn .sc-mo-label { color: hsl(45,65%,28%); }
.sc-month.autumn .sc-mo-note { color: hsl(45,50%,50%); }
.sc-month.autumn .sc-mo-icon { color: hsl(45,70%,40%); }
.sc-month.autumn .sc-event { background: hsl(45,55%,99%); border-color: hsl(45,50%,85%); }
.sc-month.autumn .sc-event .sc-ev-hd { background: hsl(45,55%,95%); border-bottom-color: hsl(45,45%,87%); }
/* —— 冬 · 蓝（整块季节色·淡雅） —— */
.sc-month.winter {
  border: 1px solid hsl(225,40%,82%);
  border-left: 3px solid hsl(225,45%,52%);
  background: linear-gradient(135deg, hsl(225,45%,99%), hsl(225,35%,96%));
}
.sc-month.winter .sc-mo-hd { background: hsl(225,40%,90%); border-bottom-color: hsl(225,35%,80%); }
.sc-month.winter .sc-mo-label { color: hsl(225,45%,34%); }
.sc-month.winter .sc-mo-note { color: hsl(225,35%,52%); }
.sc-month.winter .sc-mo-icon { color: hsl(225,50%,44%); }
.sc-month.winter .sc-event { background: hsl(225,30%,99%); border-color: hsl(225,30%,86%); }
.sc-month.winter .sc-event .sc-ev-hd { background: hsl(225,35%,95%); border-bottom-color: hsl(225,30%,88%); }
/* ===== 掠过月份（美化版） ===== */
.sc-month.skim {
  border-style: dashed;
  border-width: 1px;
  border-left-width: 5px;
  border-left-style: solid;
  background: hsl(205,10%,96%);
}
.sc-month.skim .sc-mo-hd {
  background: transparent;
  border-bottom: 1px dashed hsl(205,10%,82%);
}
.sc-month.skim .sc-mo-hd .sc-mo-label { font-weight: 600; }
.sc-month.skim .sc-mo-hd .sc-mo-note::before { content: '· '; }
.sc-skim-body {
  padding: .45rem .75rem;
  font-size: .9rem;
  line-height: 1.85;
  color: hsl(210,12%,45%);
  font-style: italic;
}
.sc-skim-body p { margin: 0; text-indent: 2em; }
/* 掠过月份四季色 */
.sc-month.skim.spring { border-left-color: hsl(345,55%,62%); background: hsl(345,35%,97%); }
.sc-month.skim.summer { border-left-color: hsl(135,45%,52%); background: hsl(135,35%,97%); }
.sc-month.skim.autumn { border-left-color: hsl(45,70%,55%); background: hsl(45,50%,97%); }
.sc-month.skim.winter { border-left-color: hsl(225,45%,52%); background: hsl(225,30%,97%); }
.sc-month.skim.spring .sc-skim-body { color: hsl(345,40%,42%); }
.sc-month.skim.summer .sc-skim-body { color: hsl(135,40%,38%); }
.sc-month.skim.autumn .sc-skim-body { color: hsl(45,55%,38%); }
.sc-month.skim.winter .sc-skim-body { color: hsl(225,40%,40%); }
/* ===== 月度三段（推进/人物/事件 · 消灭平淡月） ===== */
.sc-beat {
  padding: .4rem .75rem .5rem;
  border-radius: 4px;
  margin: .35rem .5rem .45rem;
  border-left: 3px solid;
  background: hsl(205,10%,98%);
  box-shadow: 0 1px 3px hsla(205,15%,60%,.06);
}
.sc-beat-hd {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: .12rem;
}
.sc-beat-tag {
  font-size: .58rem;
  font-weight: 700;
  padding: .01rem .4rem;
  border-radius: 8px;
  letter-spacing: .05em;
  flex-shrink: 0;
}
.sc-beat-t {
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-weight: 700;
  font-size: .76rem;
  color: hsl(210,18%,20%);
}
.sc-beat-body { font-size: .9rem; line-height: 1.85; color: hsl(210,12%,42%); }
.sc-beat-body p { margin: 0 0 .4rem 0; text-indent: 2em; }
.sc-beat-body p:last-child { margin-bottom: 0; }
/* 推进段 · 青玉（进展/进度） */
.sc-beat-prog { border-left-color: hsl(165,45%,45%); background: linear-gradient(135deg, hsl(205,10%,99%), hsla(165,40%,95%,.9)); }
.sc-beat-prog .sc-beat-tag { background: hsla(165,45%,92%,.9); color: hsl(165,50%,30%); }
/* 人物段 · 胭脂（故人切片） */
.sc-beat-char { border-left-color: hsl(350,60%,48%); background: linear-gradient(135deg, hsl(205,10%,99%), hsla(350,55%,95%,.9)); }
.sc-beat-char .sc-beat-tag { background: hsla(350,50%,93%,.9); color: hsl(350,60%,36%); }
/* 事件段 · 鎏金（具体事件） */
.sc-beat-ev { border-left-color: hsl(38,65%,42%); background: linear-gradient(135deg, hsl(205,10%,99%), hsla(38,55%,94%,.9)); }
.sc-beat-ev .sc-beat-tag { background: hsla(38,60%,93%,.9); color: hsl(38,65%,30%); }
.sc-beat .sc-ev-gains { margin-top: .15rem; }
@media (max-width: 600px) {
  .sc-beat { margin-left: .3rem; margin-right: .3rem; }
}
/* 掠过月份季头是透明浅底——白字季头不适用，改深色季节字 */
.sc-month.skim.spring .sc-mo-label { color: hsl(345,50%,38%); }
.sc-month.skim.spring .sc-mo-note { color: hsl(345,35%,55%); }
.sc-month.skim.spring .sc-mo-icon { color: hsl(345,55%,45%); }
.sc-month.skim.summer .sc-mo-label { color: hsl(135,45%,34%); }
.sc-month.skim.summer .sc-mo-note { color: hsl(135,35%,52%); }
.sc-month.skim.summer .sc-mo-icon { color: hsl(135,50%,42%); }
.sc-month.skim.autumn .sc-mo-label { color: hsl(45,65%,28%); }
.sc-month.skim.autumn .sc-mo-note { color: hsl(45,50%,50%); }
.sc-month.skim.autumn .sc-mo-icon { color: hsl(45,70%,40%); }
.sc-month.skim.winter .sc-mo-label { color: hsl(225,45%,34%); }
.sc-month.skim.winter .sc-mo-note { color: hsl(225,35%,52%); }
.sc-month.skim.winter .sc-mo-icon { color: hsl(225,50%,44%); }
/* ===== 事件块 ===== */
.sc-event {
  display: block;
  margin: .5rem .5rem .55rem;
  border-radius: 8px;
  overflow: hidden;
  background: linear-gradient(135deg, hsl(205,10%,99%), hsl(205,12%,96%));
  border: 1px solid hsl(205,10%,82%);
  border-left: 4px solid hsl(165, 24%, 72%);
}
.sc-event.good { border-left-color: hsl(140,45%,42%); }
.sc-event.bad { border-left-color: hsl(0,55%,50%); }
.sc-event.neutral { border-left-color: hsl(165, 24%, 72%); }
.sc-event.social { border-left-color: hsl(35,55%,48%); background: linear-gradient(135deg, hsl(205,10%,99%), hsla(40,45%,95%,.9)); }
.sc-event.fortune { border-left: 3px dashed hsl(35,70%,45%); background: linear-gradient(135deg, hsl(205,10%,99%), hsla(40,45%,95%,.8)); }
.sc-event.fate { border-left: 3px dashed hsl(340,55%,50%); background: linear-gradient(135deg, hsl(205,10%,99%), hsla(340,45%,94%,.85)); }
.sc-month .sc-event.fate { border-left-color: hsl(340,55%,50%); border-left-style: dashed; background: linear-gradient(135deg, hsl(205,10%,99%), hsla(340,45%,94%,.85)); }
.sc-event.death { border-left-color: hsl(0,30%,45%); background: hsl(205,8%,96%); }
.sc-event.realm { border-left: 5px solid hsl(45,85%,45%); background: linear-gradient(135deg, hsl(205,10%,99%), hsla(45,60%,94%,.9)); }
/* 事件标题栏 */
.sc-ev-hd {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: .45rem .7rem;
  border-bottom: 1px solid hsl(205,10%,84%);
  font-weight: 700;
  font-size: .86rem;
  background: hsl(205,12%,94%);
}
.sc-ev-subj {
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  letter-spacing: .03em;
  color: hsl(210,18%,20%);
}
.sc-ev-time {
  font-weight: 400;
  font-size: .72rem;
  color: hsl(210,10%,56%);
  white-space: nowrap;
  margin-left: 8px;
}
/* 事件正文 */
.sc-ev-body {
  padding: .6rem .75rem;
  font-size: .95rem;
  line-height: 1.9;
  color: hsl(210,14%,30%);
}
.sc-ev-body p {
  margin: 0 0 .6rem 0;
  text-indent: 2em;
}
.sc-ev-body p:last-child { margin-bottom: 0; }
/* 事件数值行 */
.sc-ev-gains {
  padding: .3rem .7rem;
  border-top: 1px dotted hsl(205,10%,84%);
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.sc-gain {
  display: inline-block;
  font-weight: 700;
  font-size: .76rem;
  color: hsl(140,55%,30%);
  background: hsla(140,45%,92%,.9);
  border-radius: 3px;
  padding: 0 6px;
  line-height: 1.6;
}
.sc-loss {
  display: inline-block;
  font-weight: 700;
  font-size: .76rem;
  color: hsl(0,55%,40%);
  background: hsla(0,45%,93%,.9);
  border-radius: 3px;
  padding: 0 6px;
  line-height: 1.6;
}
.sc-boom {
  display: inline-block;
  font-weight: 900;
  font-size: 1.02rem;
  padding: 2px 8px;
  border-radius: 4px;
  letter-spacing: .5px;
}
.sc-boom.sc-gain {
  color: hsl(140,55%,25%);
  background: hsla(140,40%,88%,.9);
  border: 1px solid hsl(140,45%,70%);
}
.sc-boom.sc-loss {
  color: hsl(0,60%,32%);
  background: hsla(0,40%,90%,.9);
  border: 1px solid hsl(0,45%,75%);
}
/* 段尾 */
.sc-seg-end {
  text-align: center;
  padding: .4rem;
  font-size: .78rem;
  color: hsl(210,10%,56%);
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  letter-spacing: .04em;
  border-top: 1px dashed hsl(205,10%,80%);
  margin-top: .2rem;
}
/* ===== 年尾签到 ===== */
.sc-signin {
  display: block;
  margin: .6rem .4rem .5rem 0;
  border-radius: 12px;
  overflow: hidden;
  background: linear-gradient(135deg, hsl(205,10%,99%), hsla(45,45%,96%,.85));
  border: 1.5px solid hsl(38,45%,60%);
  box-shadow: 0 3px 16px hsla(38,55%,60%,.22);
}
.sc-signin-hd {
  padding: .7rem .8rem;
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-weight: 700;
  font-size: 1rem;
  letter-spacing: .12em;
  color: hsl(38,60%,28%);
  background: linear-gradient(135deg, hsl(45,50%,92%), hsl(40,40%,90%));
  border-bottom: 1px solid hsl(38,40%,72%);
  text-align: center;
}
.sc-signin-hd .sc-signin-sub {
  display: block;
  font-family: 'PingFang SC','Microsoft YaHei','Noto Sans SC',sans-serif;
  font-size: .7rem;
  font-weight: 400;
  letter-spacing: .06em;
  color: hsl(38,35%,42%);
  margin-top: .15rem;
}
.sc-signin-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  padding: .7rem .7rem .8rem;
}
.sc-signin-card {
  position: relative;
  border-radius: 10px;
  padding: .7rem .7rem;
  background: hsl(205,10%,99%);
  border: 1px solid hsl(205,10%,78%);
  border-top: 4px solid hsl(0,0%,52%);
  cursor: pointer;
  transition: transform .15s, border-color .15s, box-shadow .15s;
}
.sc-signin-card:hover { transform: translateY(-3px); border-color: hsl(45,60%,50%); box-shadow: 0 6px 16px hsla(205,20%,60%,.22); }
.sc-signin-card .sc-sc-tier {
  position: absolute;
  top: .35rem;
  right: .5rem;
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-weight: 900;
  font-size: .9rem;
}
.sc-signin-card .sc-sc-name {
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-weight: 700;
  font-size: 1.05rem;
  color: hsl(210,18%,20%);
  margin-bottom: .2rem;
  padding-right: 1.6rem;
}
.sc-signin-card .sc-sc-desc {
  font-size: .76rem;
  font-weight: 700;
  color: hsl(165,50%,30%);
  line-height: 1.5;
}
.sc-signin-card .sc-sc-jud {
  font-size: .72rem;
  color: hsl(210,10%,56%);
  line-height: 1.5;
  margin-top: .35rem;
}
/* 六档签到卡 */
.sc-signin-card.t-fan { border-top-color: hsl(0,0%,52%); }
.sc-signin-card.t-fan .sc-sc-tier { color: hsl(0,0%,48%); }
.sc-signin-card.t-huang { border-top-color: hsl(200,40%,42%); }
.sc-signin-card.t-huang .sc-sc-tier { color: hsl(200,45%,38%); }
.sc-signin-card.t-xuan { border-top-color: hsl(275,45%,52%); }
.sc-signin-card.t-xuan .sc-sc-tier { color: hsl(275,50%,46%); }
.sc-signin-card.t-di { border-top-color: hsl(38,65%,42%); }
.sc-signin-card.t-di .sc-sc-tier { color: hsl(38,65%,38%); }
.sc-signin-card.t-tian { border-top-color: hsl(0,65%,48%); }
.sc-signin-card.t-tian .sc-sc-tier { color: hsl(0,70%,42%); }
.sc-signin-card.t-xian {
  border-top-color: hsl(45,85%,45%);
  box-shadow: 0 0 14px hsla(45,85%,55%,.3);
}
.sc-signin-card.t-xian .sc-sc-tier { color: hsl(45,90%,35%); text-shadow: 0 0 8px hsla(45,85%,55%,.5); }
@media (max-width: 600px) {
  .sc-signin-cards { grid-template-columns: 1fr; }
}
/* ===== 突破 / 合成 ===== */
.sc-break {
  display: block;
  margin: .5rem .4rem .4rem 0;
  border-radius: 10px;
  overflow: hidden;
  background: linear-gradient(135deg, hsl(205,10%,99%), hsla(45,60%,94%,.9));
  border: 1px solid hsl(45,60%,55%);
  box-shadow: 0 2px 12px hsla(45,60%,60%,.2);
  text-align: center;
  padding: .6rem .7rem;
}
.sc-realm-up {
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-size: 1.5rem;
  font-weight: 900;
  letter-spacing: .1em;
  color: hsl(45,90%,30%);
  text-shadow: 0 1px 6px hsla(45,85%,55%,.4);
}
.sc-realm-sub {
  font-size: .74rem;
  color: hsl(210,12%,42%);
  margin-top: .3rem;
}
.sc-fuse {
  display: block;
  margin: .5rem .4rem .4rem 0;
  border-radius: 10px;
  overflow: hidden;
  background: hsl(205,10%,99%);
  border: 1px solid hsl(205,10%,80%);
  padding: .5rem .6rem;
}
.sc-fuse-pair {
  display: flex;
  align-items: center;
  gap: 6px;
  justify-content: center;
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-size: .84rem;
  color: hsl(210,18%,20%);
  margin-bottom: .35rem;
}
.sc-fuse-arrow { color: hsl(165,55%,35%); font-size: .9rem; }
.sc-fuse-result {
  text-align: center;
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-weight: 700;
  font-size: .92rem;
  padding-top: .3rem;
  border-top: 1px dotted hsl(205,10%,82%);
  color: hsl(210,18%,25%);
}
/* 合成结果色：部分匹配容错——类名在容器或结果上都能命中 */
[class*="sc-fuse-up"] .sc-fuse-result, .sc-fuse-result[class*="sc-fuse-up"] { color: hsl(140,60%,28%); }
[class*="sc-fuse-down"] .sc-fuse-result, .sc-fuse-result[class*="sc-fuse-down"] { color: hsl(35,60%,35%); }
[class*="sc-fuse-fail"] .sc-fuse-result, .sc-fuse-result[class*="sc-fuse-fail"] { color: hsl(0,60%,38%); }
/* 签到卡容错：卡直接挂在 sc-signin 下（缺 cards 包裹）也有间距 */
.sc-signin > .sc-signin-card { margin: .4rem .7rem; }
/* ===== 系统弹窗（机械风·鎏金） ===== */
.sc-sys {
  display: block;
  margin: .4rem .4rem .5rem 0;
  border-radius: 8px;
  border: 1px solid hsl(45,65%,62%);
  border-left: 4px solid hsl(45,85%,45%);
  background: linear-gradient(135deg, hsl(45,50%,97%), hsl(45,40%,92%));
  box-shadow: 0 1px 4px hsla(45,70%,50%,.18);
  overflow: hidden;
}
.sc-sys-hd {
  padding: .3rem .7rem;
  font-weight: 700;
  font-size: .76rem;
  letter-spacing: .12em;
  color: hsl(45,75%,26%);
  background: hsla(45,55%,86%,.6);
  border-bottom: 1px dashed hsl(45,55%,80%);
}
.sc-sys-body {
  padding: .5rem .75rem;
  font-size: .92rem;
  line-height: 1.8;
  color: hsl(210,15%,28%);
}
.sc-sys-body b { color: hsl(45,80%,28%); font-weight: 700; }
.sc-sys-tier { color: hsl(45,85%,30%); font-weight: 700; }
/* ===== 思维链 ===== */
.sc-chain {
  max-width: 720px;
  margin: 0 auto .6rem;
  background: hsl(205,10%,98%);
  border: 1px solid hsl(205,10%,80%);
  border-left: 4px solid hsl(275,40%,50%);
  border-radius: 8px;
  font-size: .76rem;
  line-height: 1.5;
  color: hsl(210,12%,42%);
}
.sc-chain[open] { padding: 0; }
.sc-chain summary {
  padding: .4rem .7rem;
  cursor: pointer;
  font-weight: 700;
  font-size: .8rem;
  color: hsl(210,18%,20%);
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  letter-spacing: .04em;
  background: linear-gradient(135deg, hsl(205,12%,92%), hsl(205,10%,89%));
  border-bottom: 1px solid hsl(205,10%,80%);
  border-radius: 7px 7px 0 0;
  user-select: none;
}
.sc-chain .sc-chain-body {
  padding: .5rem .7rem;
  font-family: 'SF Mono','Consolas','Menlo',monospace;
  font-size: .72rem;
  white-space: pre-wrap;
  line-height: 1.45;
  color: hsl(210,12%,42%);
  max-height: 420px;
  overflow-y: auto;
}
/* ===== 情节聚焦 ===== */
.sc-focus {
  display: block;
  max-width: 720px;
  margin: 0 auto .6rem;
  padding: .7rem .9rem;
  background: linear-gradient(135deg, hsl(205,10%,99%), hsla(165,35%,95%,.8));
  border: 2px solid hsl(165,40%,60%);
  border-radius: 10px;
  box-shadow: 0 2px 12px hsla(165,40%,60%,.15);
  font-size: .88rem;
  line-height: 1.85;
  color: hsl(210,14%,30%);
}
.sc-focus::before {
  content: '🔍 情节聚焦';
  display: block;
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-size: .8rem;
  color: hsl(165,50%,28%);
  margin-bottom: .5rem;
  padding-bottom: .35rem;
  border-bottom: 1px dashed hsl(205,10%,82%);
  letter-spacing: .06em;
}
.sc-unfocus {
  display: block;
  max-width: 720px;
  margin: 0 auto .5rem;
  padding: .4rem .9rem;
  background: hsl(205,12%,94%);
  border: 1px dashed hsl(205,10%,80%);
  border-radius: 8px;
  font-size: .78rem;
  color: hsl(210,10%,56%);
  text-align: center;
}
/* ===== 行动选项面板 sm-actions ===== */
.sm-actions {
  max-width: 720px;
  margin: .4rem auto 0;
  border: 1px solid hsl(205,10%,80%);
  border-left: 4px solid hsl(165,45%,40%);
  border-radius: 8px;
  background: hsl(205,10%,98%);
  overflow: hidden;
}
.sm-actions .sm-panel-h {
  padding: .4rem .7rem;
  font-weight: 700;
  font-size: .82rem;
  color: hsl(165,50%,28%);
  background: hsl(165,35%,90%);
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  letter-spacing: .04em;
  border-bottom: 1px solid hsl(165,30%,80%);
}
.sm-actions .sm-sec { padding: .35rem .5rem .5rem; }
.sm-actions .sm-sec pre {
  margin: .35rem 0;
  padding: .5rem .7rem;
  border-radius: 6px;
  border-left: 4px solid hsl(140,35%,45%);
  background: hsla(140,30%,95%,.8);
  transition: background .15s, border-color .15s;
}
.sm-actions .sm-sec pre:hover {
  background: hsla(140,35%,92%,.9);
  border-left-color: hsl(140,45%,38%);
}
.sm-actions .sm-sec pre code {
  font-family: inherit;
  font-size: .82rem;
  line-height: 1.6;
  color: hsl(210,18%,20%);
  background: transparent;
  padding: 0;
  white-space: pre-wrap;
  word-break: break-word;
}
/* A = 修炼/生活（绿） */
.sm-actions .sm-sec pre:nth-of-type(1) { border-left-color: hsl(140,35%,45%); background: hsla(140,30%,95%,.8); }
.sm-actions .sm-sec pre:nth-of-type(1):hover { border-left-color: hsl(140,45%,38%); background: hsla(140,35%,92%,.9); }
/* B = 故人/社交（暖金） */
.sm-actions .sm-sec pre:nth-of-type(2) { border-left-color: hsl(35,55%,48%); background: hsla(38,40%,95%,.9); }
.sm-actions .sm-sec pre:nth-of-type(2):hover { border-left-color: hsl(35,65%,40%); background: hsla(38,45%,92%,.9); }
/* C = 时间推进（黛蓝） */
.sm-actions .sm-sec pre:nth-of-type(3) { border-left-color: hsl(210,40%,48%); background: hsla(210,35%,95%,.9); }
.sm-actions .sm-sec pre:nth-of-type(3):hover { border-left-color: hsl(210,50%,40%); background: hsla(210,40%,92%,.9); }
/* 自由输入 */
.sm-free {
  display: block;
  padding: .35rem .7rem;
  margin-top: .2rem;
  color: hsl(210,10%,56%);
  font-size: .78rem;
  font-style: italic;
}
/* ===== 玩家面板 ===== */
.sc-panel {
  max-width: 720px;
  margin: .4rem auto;
  background: hsl(205,10%,98%);
  border: 1px solid hsl(205,10%,80%);
  border-radius: 8px;
  font-size: .8rem;
  line-height: 1.6;
  color: hsl(210,12%,42%);
}
.sc-panel summary {
  padding: .4rem .7rem;
  cursor: pointer;
  font-weight: 700;
  font-size: .82rem;
  color: hsl(210,18%,20%);
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  letter-spacing: .04em;
  background: linear-gradient(135deg, hsl(205,12%,92%), hsl(205,10%,89%));
  border-bottom: 1px solid hsl(205,10%,80%);
  border-radius: 7px 7px 0 0;
  user-select: none;
}
.sc-panel .sc-status-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
  padding: .5rem .6rem;
}
/* 状态块 */
.sc-stat-block {
  background: hsl(205,12%,95%);
  border-radius: 6px;
  padding: .4rem .5rem;
  border: 1px solid hsl(205,10%,84%);
}
.sc-stat-h {
  font-weight: 700;
  font-size: .78rem;
  color: hsl(210,18%,20%);
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  letter-spacing: .04em;
  margin-bottom: .25rem;
  padding-bottom: .2rem;
  border-bottom: 1px dotted hsl(205,10%,82%);
}
/* 基础属性行 */
.sc-stat-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 6px;
  padding: .12rem 0;
  font-size: .76rem;
}
.sc-stat-row span:first-child { color: hsl(210,10%,56%); font-weight: 500; flex-shrink: 0; }
.sc-stat-row span:last-child { color: hsl(210,16%,28%); font-weight: 600; text-align: right; }
/* ===== 玩家面板四块 · 分割感 + 各自美术表现 =====
   ①基本信息=青玉出身牌 ②修行=鎏金道行 ③八维=玄紫命盘 ④故人=胭脂红绳
   块与块用粗色边分割；块内元素同色系融合 */
.sc-panel .sc-status-grid { gap: 10px; }
.sc-panel .sc-status-grid > .sc-stat-block {
  border-left-width: 4px;
  border-left-style: solid;
  border-left-color: hsl(205,10%,70%);
  box-shadow: 0 2px 6px hsla(205,15%,60%,.08);
}
.sc-panel .sc-status-grid > .sc-stat-block .sc-stat-h {
  position: relative;
  padding-left: .45rem;
}
.sc-panel .sc-status-grid > .sc-stat-block .sc-stat-h::before {
  content: '';
  position: absolute;
  left: 0;
  top: .12rem;
  bottom: .12rem;
  width: 3px;
  border-radius: 2px;
  background: hsl(205,10%,70%);
}
/* ① 基本信息 · 青玉出身牌 */
.sc-panel .sc-status-grid > .sc-stat-block:nth-child(1) {
  border-left-color: hsl(165,45%,42%);
  background: linear-gradient(135deg, hsl(205,10%,99%), hsla(165,45%,94%,.9));
}
.sc-panel .sc-status-grid > .sc-stat-block:nth-child(1) .sc-stat-h { color: hsl(165,50%,28%); border-bottom-color: hsla(165,45%,78%,.8); }
.sc-panel .sc-status-grid > .sc-stat-block:nth-child(1) .sc-stat-h::before { background: hsl(165,45%,45%); }
/* ② 修行 · 鎏金道行 */
.sc-panel .sc-status-grid > .sc-stat-block:nth-child(2) {
  border-left-color: hsl(38,65%,42%);
  background: linear-gradient(135deg, hsl(205,10%,99%), hsla(38,60%,94%,.9));
}
.sc-panel .sc-status-grid > .sc-stat-block:nth-child(2) .sc-stat-h { color: hsl(38,65%,32%); border-bottom-color: hsla(38,55%,78%,.8); }
.sc-panel .sc-status-grid > .sc-stat-block:nth-child(2) .sc-stat-h::before { background: hsl(38,70%,45%); }
/* ③ 八维属性 · 玄紫命盘 */
.sc-panel .sc-status-grid > .sc-stat-block:nth-child(3) {
  border-left-color: hsl(275,45%,52%);
  background: linear-gradient(135deg, hsl(205,10%,99%), hsla(275,45%,95%,.9));
}
.sc-panel .sc-status-grid > .sc-stat-block:nth-child(3) .sc-stat-h { color: hsl(275,50%,38%); border-bottom-color: hsla(275,45%,80%,.8); }
.sc-panel .sc-status-grid > .sc-stat-block:nth-child(3) .sc-stat-h::before { background: hsl(275,50%,52%); }
/* ④ 故人 · 胭脂红绳 */
.sc-panel .sc-status-grid > .sc-stat-block:nth-child(4) {
  border-left-color: hsl(350,60%,48%);
  background: linear-gradient(135deg, hsl(205,10%,99%), hsla(350,55%,95%,.9));
}
.sc-panel .sc-status-grid > .sc-stat-block:nth-child(4) .sc-stat-h { color: hsl(350,60%,36%); border-bottom-color: hsla(350,55%,80%,.8); }
.sc-panel .sc-status-grid > .sc-stat-block:nth-child(4) .sc-stat-h::before { background: hsl(350,65%,48%); }
/* ===== 八维属性网格 ===== */
.sc-attr-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2px 8px;
}
.sc-attr-cell {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding: .18rem .3rem;
  border-radius: 3px;
  background: hsl(205,10%,99%);
  border: 1px solid hsl(205,10%,86%);
}
.sc-attr-num {
  font-size: 1.15rem;
  font-weight: 900;
  letter-spacing: .02em;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  font-family: 'SF Mono','Consolas','Menlo',monospace;
}
.sc-attr-key {
  font-size: .7rem;
  color: hsl(210,10%,56%);
  font-weight: 500;
}
/* 数值色阶 */
.sc-attr-num.sc-lo { color: hsl(0,60%,42%); }       /* <200 红 */
.sc-attr-num.sc-mid { color: hsl(25,60%,40%); }      /* 200-400 橙 */
.sc-attr-num.sc-ok { color: hsl(210,10%,45%); }      /* 400-600 灰 */
.sc-attr-num.sc-hi { color: hsl(140,50%,35%); }      /* 600-800 绿 */
.sc-attr-num.sc-top { color: hsl(45,75%,35%); }      /* 800+ 金 */
/* ===== 劫业反向色阶（越低越好） =====
   劫业<200=业清(绿·好) → 800+=业深(红·坏)
   劫业cell加 class="jie" 即自动反向 */
.sc-attr-cell.jie .sc-attr-num.sc-lo { color: hsl(140,50%,35%); }  /* 低=绿 好 */
.sc-attr-cell.jie .sc-attr-num.sc-mid { color: hsl(35,55%,42%); }
.sc-attr-cell.jie .sc-attr-num.sc-ok { color: hsl(210,10%,45%); }
.sc-attr-cell.jie .sc-attr-num.sc-hi { color: hsl(25,55%,42%); }
.sc-attr-cell.jie .sc-attr-num.sc-top { color: hsl(0,60%,42%); }   /* 高=红 坏 */
.sc-attr-cell.jie .sc-attr-tip.t-lo { background: hsla(140,40%,93%,.9); color: hsl(140,50%,35%); }
.sc-attr-cell.jie .sc-attr-tip.t-mid { background: hsla(35,40%,93%,.9); color: hsl(35,55%,42%); }
.sc-attr-cell.jie .sc-attr-tip.t-ok { background: hsl(205,8%,90%); color: hsl(210,10%,45%); }
.sc-attr-cell.jie .sc-attr-tip.t-hi { background: hsla(25,40%,93%,.9); color: hsl(25,55%,42%); }
.sc-attr-cell.jie .sc-attr-tip.t-top { background: hsla(0,45%,93%,.9); color: hsl(0,60%,42%); }
/* 档位标签 */
.sc-attr-tip {
  font-size: .6rem;
  font-weight: 700;
  padding: .02rem .32rem;
  border-radius: 8px;
  line-height: 1.4;
  white-space: nowrap;
  background: hsl(205,10%,88%);
  color: hsl(210,10%,45%);
}
.sc-attr-tip.t-lo { background: hsla(0,45%,93%,.9); color: hsl(0,60%,42%); }
.sc-attr-tip.t-mid { background: hsla(25,45%,93%,.9); color: hsl(25,60%,40%); }
.sc-attr-tip.t-ok { background: hsl(205,8%,90%); color: hsl(210,10%,45%); }
.sc-attr-tip.t-hi { background: hsla(140,40%,93%,.9); color: hsl(140,50%,35%); }
.sc-attr-tip.t-top { background: hsla(45,55%,92%,.9); color: hsl(45,75%,35%); }
/* 心情值大号 */
.sc-mood-big {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-top: .25rem;
  padding: .25rem .3rem;
  border-radius: 4px;
  background: linear-gradient(135deg, hsl(205,10%,99%), hsla(165,40%,94%,.9));
  border: 1px solid hsl(165,35%,80%);
}
.sc-mood-big .sc-attr-key { font-weight: 700; color: hsl(165,50%,28%); }
.sc-mood-big .sc-attr-num { font-size: 1.3rem; }
/* ===== 境界进度条 ===== */
.sc-realm-bar {
  height: 8px;
  border-radius: 4px;
  background: hsl(205,12%,88%);
  overflow: hidden;
  margin: .2rem 0 .35rem;
  box-shadow: inset 0 1px 2px hsla(205,15%,60%,.25);
}
.sc-realm-bar-fill {
  height: 100%;
  border-radius: 4px;
  background: linear-gradient(90deg, hsl(165,45%,45%), hsl(45,75%,50%));
}
/* ═══════════════════════════════════════════
   玩家面板 v5 · 原四块 + 功法藏书第5块
   ①基本信息(青玉) ②修行(鎏金) ③八维属性(玄紫)
   ④故人(胭脂) ⑤功法藏书(鎏金·全宽·新主景)
   前四块保持原 nth-child 配色不变；功法藏书靠
   sc-tech-block 类名激活，全宽 + 鎏金配色
   ═══════════════════════════════════════════ */
/* —— 功法藏书块 · 全宽 · 鎏金藏书阁 —— */
.sc-stat-block.sc-tech-block,
.sc-stat-block[class*="tech"] {
  grid-column: 1 / -1;
  border-left-color: hsl(45,75%,42%);
  background: linear-gradient(135deg, hsl(205,10%,99%), hsla(45,60%,94%,.9));
}
.sc-tech-block .sc-stat-h,
.sc-stat-block[class*="tech"] .sc-stat-h {
  color: hsl(45,70%,30%);
  border-bottom-color: hsla(45,55%,78%,.8);
}
.sc-tech-block .sc-stat-h::before,
.sc-stat-block[class*="tech"] .sc-stat-h::before { background: hsl(45,75%,45%); }
/* 功法列表 · 双列卡片网格，窄屏单列 */
.sc-tech-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
  margin-top: .3rem;
}
/* 功法卡 */
.sc-tech-card {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-areas:
    "tier head"
    "tier bar"
    "tier origin";
  column-gap: 8px;
  align-items: center;
  padding: .35rem .5rem;
  border-radius: 5px;
  border: 1px solid hsl(205,10%,84%);
  border-left-width: 3px;
  background: hsl(205,10%,99%);
  box-shadow: 0 1px 3px hsla(205,15%,60%,.08);
}
/* 档位左边带（复用天赋六档色系：凡/黄/玄/地/天/仙） */
.sc-tech-card.t-fan  { border-left-color: hsl(0,0%,52%); }
.sc-tech-card.t-huang{ border-left-color: hsl(200,40%,42%); }
.sc-tech-card.t-xuan { border-left-color: hsl(275,45%,52%); }
.sc-tech-card.t-di   { border-left-color: hsl(38,65%,42%); }
.sc-tech-card.t-tian { border-left-color: hsl(0,65%,48%); }
.sc-tech-card.t-xian { border-left-color: hsl(45,85%,45%); }
/* 档位徽章（圆形） */
.sc-tech-tier {
  grid-area: tier;
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-weight: 700;
  font-size: .78rem;
  line-height: 1;
  color: #fff;
}
.sc-tech-tier.t-fan  { background: hsl(0,0%,58%); }
.sc-tech-tier.t-huang{ background: hsl(200,40%,46%); }
.sc-tech-tier.t-xuan { background: hsl(275,45%,55%); }
.sc-tech-tier.t-di   { background: hsl(38,60%,45%); }
.sc-tech-tier.t-tian { background: hsl(0,60%,50%); }
.sc-tech-tier.t-xian { background: linear-gradient(135deg, hsl(45,90%,52%), hsl(45,80%,40%)); box-shadow: 0 0 8px hsla(45,85%,55%,.4); }
/* 卡头：名 + 类型 */
.sc-tech-head {
  grid-area: head;
  display: flex;
  align-items: baseline;
  gap: 6px;
  min-width: 0;
}
.sc-tech-name {
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-weight: 700;
  font-size: .82rem;
  color: hsl(210,18%,20%);
  letter-spacing: .03em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sc-tech-type {
  font-size: .6rem;
  font-weight: 600;
  color: hsl(275,40%,45%);
  background: hsla(275,35%,93%,.9);
  border: 1px solid hsla(275,35%,80%,.8);
  border-radius: 3px;
  padding: 0 4px;
  flex-shrink: 0;
}
/* 层次进度（入门→小成→大成→圆满→通玄） */
.sc-tech-mastery {
  grid-area: bar;
  display: flex;
  align-items: center;
  gap: 6px;
}
.sc-tech-stage {
  font-size: .62rem;
  font-weight: 700;
  color: hsl(210,12%,45%);
  flex-shrink: 0;
}
.sc-tech-bar {
  flex: 1;
  height: 6px;
  border-radius: 3px;
  background: hsl(205,12%,88%);
  overflow: hidden;
  box-shadow: inset 0 1px 2px hsla(205,15%,60%,.25);
}
.sc-tech-bar-fill {
  height: 100%;
  border-radius: 3px;
  background: linear-gradient(90deg, hsl(165,45%,45%), hsl(45,75%,50%));
}
.sc-tech-pct {
  font-family: 'SF Mono','Consolas','Menlo',monospace;
  font-size: .62rem;
  font-weight: 600;
  color: hsl(210,12%,45%);
  flex-shrink: 0;
}
/* 来历 · 故人遗泽高亮 */
.sc-tech-origin {
  grid-area: origin;
  font-size: .62rem;
  color: hsl(210,10%,52%);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sc-tech-legacy {
  color: hsl(0,55%,40%);
  font-weight: 700;
}
@media (max-width: 600px) {
  .sc-tech-list { grid-template-columns: 1fr; }
}
/* ===== 岁月收藏柜 · 可积累标签行（成就/灵宠洞府/经历身份） ===== */
.sc-acc-block {
  grid-column: 1 / -1;
  border-left-color: hsl(45,65%,40%);
  background: linear-gradient(135deg, hsl(205,10%,99%), hsla(45,55%,95%,.9));
}
.sc-acc-block .sc-stat-h {
  color: hsl(45,60%,30%);
  border-bottom-color: hsla(45,50%,78%,.8);
}
.sc-acc-block .sc-stat-h::before { background: hsl(45,70%,45%); }
.sc-acc-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  padding: .22rem 0;
  border-bottom: 1px dotted hsla(45,40%,80%,.6);
}
.sc-acc-row:last-child { border-bottom: none; }
.sc-acc-label {
  font-size: .68rem;
  font-weight: 700;
  color: hsl(210,12%,42%);
  width: 5.6rem;
  flex-shrink: 0;
  letter-spacing: .04em;
}
.sc-acc-tag {
  font-size: .64rem;
  font-weight: 600;
  padding: .06rem .55rem;
  border-radius: 10px;
  white-space: nowrap;
  letter-spacing: .02em;
}
.sc-acc-tag.a-gold  { color: hsl(45,65%,30%);  background: hsla(45,60%,93%,.9); border: 1px solid hsla(45,55%,78%,.8); }
.sc-acc-tag.a-jade  { color: hsl(165,50%,28%); background: hsla(165,40%,93%,.9); border: 1px solid hsla(165,45%,78%,.8); }
.sc-acc-tag.a-paper { color: hsl(25,35%,38%);  background: hsl(35,30%,96%);       border: 1px solid hsl(35,25%,86%); }
/* ===== 五维属性 v2 · 外置加成（小数值·大影响） ===== */
.sc-attr-cell.col {
  flex-direction: column;
  align-items: stretch;
  gap: 2px;
}
.sc-attr-cell.col .sc-attr-top {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 4px;
}
/* 每格下方小进度条：往下一个档位（7=人中龙凤 / 10+=超凡入圣） */
.sc-attr-bar {
  height: 3px;
  border-radius: 2px;
  background: hsl(205,12%,88%);
  overflow: hidden;
}
.sc-attr-bar-fill {
  height: 100%;
  border-radius: 2px;
  background: linear-gradient(90deg, hsl(165,45%,45%), hsl(45,75%,50%));
}
.sc-attr-next {
  font-size: .58rem;
  color: hsl(45,70%,32%);
  font-weight: 600;
  white-space: nowrap;
}
/* ===== 战力条（境界·属性·功法三源合流） ===== */
.sc-power-bar {
  height: 8px;
  border-radius: 4px;
  background: hsl(205,12%,88%);
  overflow: hidden;
  margin: .2rem 0 .35rem;
  box-shadow: inset 0 1px 2px hsla(205,15%,60%,.25);
}
.sc-power-bar-fill {
  height: 100%;
  border-radius: 4px;
  background: linear-gradient(90deg, hsl(350,60%,48%), hsl(45,75%,50%));
}
/* ===== 修行块 · 纯标签体系（境界/战力/天赋格/灵石全标签化，半宽） ===== */
.sc-cult-row {
  margin-bottom: .4rem;
}
.sc-cult-head {
  display: flex;
  align-items: center;
  gap: 6px;
}
.sc-cult-key {
  font-size: .66rem;
  font-weight: 600;
  color: hsl(210,10%,52%);
  letter-spacing: .06em;
  flex-shrink: 0;
}
.sc-cult-val {
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-weight: 700;
  font-size: .92rem;
  color: hsl(38,70%,30%);
  flex: 1;
}
.sc-cult-val.sc-cult-power {
  font-family: 'SF Mono','Consolas','Menlo',monospace;
  font-size: 1.5rem;
  font-weight: 900;
  color: hsl(350,60%,40%);
  line-height: 1;
  flex: none;
}
.sc-cult-tier {
  font-size: .6rem;
  font-weight: 700;
  color: hsl(275,50%,42%);
  background: hsla(275,40%,94%,.9);
  border: 1px solid hsla(275,40%,82%,.8);
  border-radius: 8px;
  padding: .02rem .4rem;
  white-space: nowrap;
  flex-shrink: 0;
}
/* 标签行：进度类标签横排 */
.sc-cult-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: .2rem;
}
/* 通用标签 */
.sc-cult-tag {
  font-size: .6rem;
  font-weight: 700;
  padding: .03rem .5rem;
  border-radius: 10px;
  white-space: nowrap;
  letter-spacing: .02em;
}
.sc-cult-tag.t-jade { color: hsl(165,50%,30%); background: hsla(165,40%,93%,.9); border: 1px solid hsla(165,45%,78%,.8); }
.sc-cult-tag.t-red  { color: hsl(350,60%,38%); background: hsla(350,45%,94%,.9); border: 1px solid hsla(350,50%,80%,.8); }
.sc-cult-tag.t-gold { color: hsl(45,70%,32%);  background: hsla(45,60%,93%,.9); border: 1px solid hsla(45,55%,80%,.8); }
.sc-cult-tag.t-purple{color: hsl(275,50%,40%); background: hsla(275,40%,94%,.9); border: 1px solid hsla(275,40%,82%,.8); }
/* 底栏 chip：天赋格 / 灵石 */
.sc-cult-foot {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: .3rem;
  padding-top: .3rem;
  border-top: 1px dotted hsla(38,45%,75%,.7);
}
.sc-cult-chip {
  font-size: .68rem;
  font-weight: 600;
  color: hsl(38,55%,35%);
  background: hsla(38,45%,94%,.9);
  border: 1px solid hsla(38,45%,82%,.8);
  border-radius: 10px;
  padding: .08rem .55rem;
  white-space: nowrap;
}
/* ===== 天赋卡片（六档） ===== */
.sc-talent-card {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: .3rem .45rem;
  margin: .15rem 0;
  border-radius: 4px;
  border-left: 3px solid;
  font-size: .74rem;
}
.sc-talent-fan { background: linear-gradient(135deg, hsl(0,0%,98%), hsl(0,0%,95%)); border-left-color: hsl(0,0%,52%); }
.sc-talent-huang { background: linear-gradient(135deg, hsl(200,30%,97%), hsl(200,25%,93%)); border-left-color: hsl(200,40%,42%); }
.sc-talent-xuan { background: linear-gradient(135deg, hsl(275,35%,97%), hsl(275,30%,93%)); border-left-color: hsl(275,45%,52%); }
.sc-talent-di { background: linear-gradient(135deg, hsl(38,45%,97%), hsl(38,40%,93%)); border-left-color: hsl(38,65%,42%); }
.sc-talent-tian { background: linear-gradient(135deg, hsl(0,40%,98%), hsl(0,35%,94%)); border-left-color: hsl(0,65%,48%); }
.sc-talent-xian { background: linear-gradient(135deg, hsl(45,55%,97%), hsl(45,50%,92%)); border-left-color: hsl(45,85%,45%); box-shadow: 0 0 10px hsla(45,85%,55%,.25); }
.sc-talent-name {
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-weight: 700;
  font-size: .82rem;
  letter-spacing: .05em;
  color: hsl(210,18%,20%);
}
.sc-talent-desc {
  font-size: .7rem;
  color: hsl(210,10%,56%);
  line-height: 1.35;
}
/* ===== 天赋独立面板（防止塞进面板格子撑坏格式） ===== */
.sc-talent-panel { border-left: 4px solid hsl(45,75%,45%) !important; }
.sc-talent-panel .sc-talent-count {
  font-family: 'PingFang SC','Microsoft YaHei','Noto Sans SC',sans-serif;
  font-size: .7rem;
  font-weight: 400;
  color: hsl(210,10%,56%);
}
.sc-talent-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
  padding: .5rem .6rem;
}
.sc-talent-list .sc-talent-card { margin: 0; }
@media (max-width: 600px) {
  .sc-talent-list { grid-template-columns: 1fr; }
}
/* ===== 人物图鉴 ===== */
.sc-dex-panel {
  max-width: 720px;
  margin: .4rem auto;
  background: hsl(205,10%,98%);
  border: 1px solid hsl(205,10%,80%);
  border-left: 4px solid hsl(275,40%,50%);
  border-radius: 8px;
  font-size: .78rem;
  line-height: 1.55;
  color: hsl(210,12%,42%);
}
.sc-dex-panel summary {
  padding: .4rem .7rem;
  cursor: pointer;
  font-weight: 700;
  font-size: .82rem;
  color: hsl(210,18%,20%);
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  letter-spacing: .04em;
  background: linear-gradient(135deg, hsl(205,12%,92%), hsl(205,10%,89%));
  border-bottom: 1px solid hsl(205,10%,80%);
  border-radius: 7px 7px 0 0;
  user-select: none;
}
.sc-dex-list { padding: .4rem .6rem; }
.sc-dex-item {
  padding: .4rem 0;
  border-bottom: 1px dotted hsl(205,10%,84%);
}
.sc-dex-item:last-child { border-bottom: none; }
.sc-dex-item.sc-dex-dead { opacity: .66; }
.sc-dex-name {
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-weight: 700;
  font-size: .82rem;
  color: hsl(210,18%,20%);
  letter-spacing: .03em;
  margin-bottom: .2rem;
}
.sc-dead-tag {
  display: inline-block;
  font-family: 'PingFang SC','Microsoft YaHei','Noto Sans SC',sans-serif;
  font-size: .6rem;
  font-weight: 700;
  color: hsl(0,60%,40%);
  background: hsla(0,45%,93%,.9);
  border: 1px solid hsla(0,50%,75%,.8);
  border-radius: 4px;
  padding: 0 5px;
  margin-left: 4px;
  vertical-align: middle;
}
.sc-dex-detail { padding-left: .2rem; }
.sc-dex-line {
  font-size: .74rem;
  color: hsl(210,12%,42%);
  line-height: 1.5;
  padding: .06rem 0;
}
.sc-dex-line b { color: hsl(210,18%,20%); font-weight: 600; }
.sc-dex-meta {
  font-size: .68rem;
  color: hsl(210,10%,56%);
  margin-top: .12rem;
  font-style: italic;
}
/* ===== 记忆区（独立面板） ===== */
.sc-mem-panel { border-left: 4px solid hsl(210,40%,48%) !important; }
.sc-mem-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  padding: .5rem .6rem;
}
.sc-mem-col {
  background: hsl(205,12%,95%);
  border-radius: 6px;
  padding: .35rem .45rem;
  border: 1px solid hsl(205,10%,84%);
  border-left: 3px solid hsl(210,40%,55%);
}
/* ③ 血脉谱 · 子嗣（青玉） */
.sc-mem-grid > .sc-mem-col:nth-child(3) { border-left-color: hsl(165,45%,42%); }
.sc-mem-grid > .sc-mem-col:nth-child(3) .sc-mem-h { color: hsl(165,50%,28%); border-bottom-color: hsla(165,45%,78%,.8); }
/* ④ 情债簿 · 初夜之人（胭脂红） */
.sc-mem-grid > .sc-mem-col:nth-child(4) { border-left-color: hsl(350,60%,48%); }
.sc-mem-grid > .sc-mem-col:nth-child(4) .sc-mem-h { color: hsl(350,60%,36%); border-bottom-color: hsla(350,55%,80%,.8); }
.sc-mem-h {
  font-weight: 700;
  font-size: .74rem;
  color: hsl(210,18%,20%);
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  letter-spacing: .03em;
  margin-bottom: .2rem;
  padding-bottom: .15rem;
  border-bottom: 1px dotted hsl(205,10%,82%);
}
.sc-mem-text {
  font-family: 'SF Mono','Consolas','Menlo',monospace;
  font-size: .7rem;
  line-height: 1.45;
  color: hsl(210,12%,42%);
  white-space: pre-wrap;
  max-height: 160px;
  overflow-y: auto;
}
/* ===== 隐藏状态链 ===== */
.sc-chain-data { display: none !important; }
/* ===== 响应式 ===== */
@media (max-width: 600px) {
  .sc-signin-cards { grid-template-columns: 1fr; }
  .sc-mem-grid { grid-template-columns: 1fr; }
  .sc-panel .sc-status-grid { grid-template-columns: 1fr; }
  .sc-year, .sc-chain, .sc-panel, .sc-dex-panel, .sc-focus, .sc-unfocus, .sm-actions {
    max-width: 100%;
    margin-left: .2rem;
    margin-right: .2rem;
  }
  .sc-year-hd { font-size: .82rem; padding: .4rem .5rem; }
  .sc-ev-hd { font-size: .84rem; padding: .3rem .45rem; }
  .sc-ev-body { padding: .45rem .5rem; font-size: .88rem; }
}
/* ===== 降速兜底 ===== */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}
/* ==========================================================
/* ==========================================================
   传闻板 —— 统一样式（坊市/邸报/桃色/心声，一套到底）
   外框 sc-rumor · 频道名 sc-rumor-h · 内容行 sc-rumor-i
   ========================================================== */
.sc-rumor {
  max-width: 720px;
  margin: .5rem auto;
  background: linear-gradient(180deg, #fdf8ec, #f8f1e0);
  border: 1px solid hsl(38,30%,72%);
  border-radius: 8px;
  overflow: hidden;
}
.sc-rumor-h {
  padding: .4rem .8rem;
  font-family: 'STKaiti','KaiTi','Noto Serif SC',serif;
  font-size: .84rem;
  font-weight: 700;
  letter-spacing: .1em;
  color: #fbf0dc;
  background: hsl(205,35%,26%);
}
.sc-rumor-i {
  padding: .4rem .8rem;
  font-size: .88rem;
  line-height: 1.8;
  border-bottom: 1px dashed hsl(38,30%,82%);
}
.sc-rumor-i:last-child { border-bottom: none; }