/* theme-song.css — 大宋衣冠（song）暖调主题：仅在 <html data-theme="song"> 下生效。
   经典主题完全不受影响（无 [data-theme=song] 前缀的规则一律不写）。
   内联 style 优先级高，故覆盖处用 !important。
   基调：古绢赭黄底（见 themes.js pageBg）+ 宣纸暖米面板 + 朱红/赭石/描金/竹绿 + 暖墨文字。 */

/* ---------- 面板：宣纸暖米底 + 描金褐描边 + 暖柔影 ---------- */
[data-theme="song"] .mld-panel{
  background: rgba(245,235,213,0.92) !important;
  border-color: rgba(150,110,50,0.42) !important;
  box-shadow: inset 0 0 0 1px rgba(168,132,58,0.18),   /* 描金内镶边 */
              inset 0 1px 0 rgba(255,250,235,0.5),
              0 6px 20px rgba(70,50,20,0.14) !important;
}

/* ---------- 标题 / 强调条 / 分隔线 / 角标 ---------- */
[data-theme="song"] .mld-title{ color:#2e2820 !important; font-family:'Noto Serif SC',serif !important; }
[data-theme="song"] .mld-accent-bar{ background:#b23a26 !important; box-shadow:0 0 8px rgba(178,58,38,0.5) !important; }
/* .mld-divider 在文末「中·画卷」装饰段统一定义为毛笔枯笔版，避免重复规则靠源码顺序取胜 */
[data-theme="song"] .mld-corner{ border-color:rgba(168,132,58,0.55) !important; }
[data-theme="song"] .mld-track{ background:rgba(115,88,42,0.24) !important; }

/* ---------- 图表/仪表/罗盘的淡冷青结构线 → 暖墨可见（修复暖底上看不清）---------- */
/* 玫瑰图外圈/内圈、设备环形底圈、罗盘刻度等：stroke=rgba(127,176,163,*) 一律换暖墨 */
[data-theme="song"] [stroke^="rgba(127,176,163"]{ stroke:rgba(120,90,45,0.34) !important; }
/* 罗盘指针的青绿半幅 → 暖赭 */
[data-theme="song"] [fill="rgba(127,176,163,0.5)"]{ fill:rgba(150,110,55,0.55) !important; }
/* 设备「在线率」环形渐变（原青瓷→金）→ 描金→朱红，暖底上更协调可见 */
[data-theme="song"] #g1 stop:nth-child(1){ stop-color:#c98a3a !important; }
[data-theme="song"] #g1 stop:nth-child(2){ stop-color:#b23a26 !important; }

/* ---------- 文字层级（覆盖模板内联浅色文字，使其在古绢底可读）----------
   注：浏览器将内联 style 中的 hex 色值规范化为 rgb()，因此属性选择器须用 rgb() 形式。
   hex→rgb 对应关系：
     #9ab8b0 → rgb(154, 184, 176)   #8aa9a1 → rgb(138, 169, 161)
     #cfe0da → rgb(207, 224, 218)   #bcd2cb → rgb(188, 210, 203)
     #e6efe9 → rgb(230, 239, 233)   #dce8e4 → rgb(220, 232, 228)
     #5f7d76 → rgb(95, 125, 118)    #6f8d86 → rgb(111, 141, 134)
     #496861 → rgb(73, 104, 97)     #f0f5f1 → rgb(240, 245, 241)
     #eef4f0 → rgb(238, 244, 240)   #9fc0b8 → rgb(159, 192, 184) ----------------------------- */
[data-theme="song"] #mldStage{ color:#2e2820; }
/* 次级灰青文字 → 暖褐 */
[data-theme="song"] [style*="color: rgb(154, 184, 176)"],
[data-theme="song"] [style*="color: rgb(138, 169, 161)"],
[data-theme="song"] [style*="color: rgb(207, 224, 218)"],
[data-theme="song"] [style*="color: rgb(188, 210, 203)"],
[data-theme="song"] [style*="color: rgb(230, 239, 233)"],
[data-theme="song"] [style*="color: rgb(220, 232, 228)"],
[data-theme="song"] [style*="color: rgb(159, 192, 184)"]{ color:#4a4030 !important; }
/* 辅助深灰色 → 黄褐 */
[data-theme="song"] [style*="color: rgb(95, 125, 118)"],
[data-theme="song"] [style*="color: rgb(111, 141, 134)"],
[data-theme="song"] [style*="color: rgb(73, 104, 97)"]{ color:#7a6a4c !important; }
/* 主白/极浅文字 → 深暖墨 */
[data-theme="song"] [style*="color: rgb(240, 245, 241)"],
[data-theme="song"] [style*="color: rgb(238, 244, 240)"],
[data-theme="song"] [style*="color: rgb(243, 240, 234)"]{ color:#2a2418 !important; }
/* 图表数据标注色（产区排名/名称/份额% / 柱图%）在古绢底上过浅 → 深赭褐 */
[data-theme="song"] [style*="color: rgb(243, 221, 210)"],
[data-theme="song"] [style*="color: rgb(243, 224, 212)"]{ color:#5a3a22 !important; }
[data-theme="song"] [style*="color: rgb(220, 199, 154)"],
[data-theme="song"] [style*="color: rgb(216, 184, 107)"]{ color:#7a5c20 !important; }
[data-theme="song"] [style*="color: rgb(232, 154, 126)"]{ color:#b23a26 !important; }   /* 发货件数 → 朱红 */
[data-theme="song"] [style*="color: rgb(168, 216, 200)"]{ color:#9c5a2c !important; }   /* 覆盖城市 → 赭 */

/* ---------- 顶栏分隔与底边 ---------- */
[data-theme="song"] .mld-header{ border-bottom-color:rgba(150,120,70,0.28) !important; }

/* ---------- 录像/相机卡描边 ---------- */
[data-theme="song"] [style*="rgba(127, 176, 163, 0.22)"],
[data-theme="song"] [style*="rgba(127,176,163,0.22)"]{ border-color:rgba(150,110,50,0.3) !important; }

/* ---------- 实时订单流：覆盖局部 CSS 变量即可整体换肤 ---------- */
[data-theme="song"] #mldOrderStream{
  --mos-bg-card: rgba(247,238,217,0.92);
  --mos-border:  rgba(150,110,50,0.3);
  --mos-active:  rgba(178,58,38,0.85);
  --mos-text:    #2e2820;
  --mos-sub:     #7a6a4c;
  --mos-orange:  #b23a26;   /* 朱红 */
  --mos-gold:    #9a7a2e;   /* 描金 */
  --mos-cyan:    #9c5a2c;   /* 赭（节点/今日订单数） */
}
/* 订单流中几处硬编码浅色文字 → 深色 */
[data-theme="song"] .mos-head .ttl,
[data-theme="song"] .mos-latest .nm b,
[data-theme="song"] .mos-latest .wine,
[data-theme="song"] .mos-item .nm b,
[data-theme="song"] .mos-item .wine{ color:#2e2820 !important; }
[data-theme="song"] .mos-latest .nm span,
[data-theme="song"] .mos-item .nm span,
[data-theme="song"] .mos-latest .amt span,
[data-theme="song"] .mos-item .amt span{ color:#8a7a5c !important; }

/* ---------- 订单流·大宋衣冠暖调重配色（覆盖 styles.css 暖橙/深青/亮青硬编码值）---------- */
/* 最新成交卡：朱红→宣纸 柔渐变 + 朱红描边 + 暖影 */
[data-theme="song"] .mos-latest{
  background:linear-gradient(135deg, rgba(178,58,38,0.10), rgba(247,238,217,0.97)) !important;
  border-color:rgba(178,58,38,0.40) !important;
  box-shadow:0 4px 16px rgba(70,50,20,0.12), inset 0 1px 0 rgba(255,250,235,0.55) !important;
}
[data-theme="song"] .mos-latest::after{ background:linear-gradient(100deg,transparent,rgba(178,58,38,0.10),transparent) !important; }
[data-theme="song"] .mos-latest .av{ box-shadow:0 0 0 1px rgba(178,58,38,0.42), 0 2px 8px rgba(120,70,30,0.18) !important; }
[data-theme="song"] .mos-latest .amt b{ color:#b23a26 !important; text-shadow:none !important; }   /* 主成交额：朱红 */
/* 列表行：宣纸暖底 + 主题描边 */
[data-theme="song"] .mos-body{
  background:rgba(247,238,217,0.7) !important;
  border-color:rgba(150,110,50,0.28) !important;
}
[data-theme="song"] .mos-body .amt b{ color:#9c5a2c !important; }   /* 列表金额：赭 */
[data-theme="song"] .mos-item .av{ box-shadow:0 0 0 1px rgba(150,110,50,0.34) !important; }
/* 纵向能量线：描金/朱红 */
[data-theme="song"] .mos-list::before{
  background:linear-gradient(180deg, rgba(178,58,38,0.05), rgba(168,132,58,0.45) 35%, rgba(168,132,58,0.45) 65%, rgba(178,58,38,0.05)) !important;
}
/* 顶部 LIVE 小卡：朱红色调 + 深可读文字 */
[data-theme="song"] .mos-stat{ box-shadow:0 2px 10px rgba(70,50,20,0.08) !important; }
[data-theme="song"] .mos-stat.live{
  background:linear-gradient(135deg, rgba(178,58,38,0.12), var(--mos-bg-card)) !important;
  border-color:rgba(178,58,38,0.38) !important;
}
[data-theme="song"] .mos-stat.live b{ color:#b23a26 !important; }

/* ---------- 隐藏经典深色专属的水墨远山 / 扫描线叠层 ---------- */
[data-theme="song"] .mld-ink-mtn,
[data-theme="song"] .mld-scanline{ display:none !important; }

/* ---------- 切换控件在大宋衣冠下的样式 ---------- */
[data-theme="song"] .mld-theme-toggle{
  border-color:rgba(150,110,50,0.4) !important;
  background:rgba(178,132,60,0.1) !important;
  color:#4a4030 !important;
}

/* ===================== 中·画卷 装饰（仅 song） ===================== */

/* letterbox 裱画底色：深暖墨褐，让古绢画卷像被装裱悬浮其上 */
[data-theme="song"] body{ background:#2a2218; }

/* 远山背景层：铺在舞台底部，低透明度暖墨 */
[data-theme="song"] .mld-song-scenery{ display:block !important;
  position:absolute; inset:0; pointer-events:none; z-index:0; overflow:hidden; }
[data-theme="song"] .mld-song-mtn{
  position:absolute; left:0; bottom:0; width:1920px; height:480px; opacity:.45; }
[data-theme="song"] .mld-song-mtn path{ fill:#9a7440; }
[data-theme="song"] .mld-song-mtn path:last-child{ fill:#7a5630; }
/* 绢纹理：极淡斜向噪点（纯渐变模拟，避免外部图） */
[data-theme="song"] #mldStage::before{ content:''; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(26% 22% at 17% 34%, rgba(120,86,40,0.10), transparent 70%),   /* 古绢做旧晕渍 */
    radial-gradient(22% 20% at 83% 62%, rgba(110,78,36,0.09), transparent 70%),
    radial-gradient(20% 26% at 58% 12%, rgba(130,96,46,0.07), transparent 70%),
    repeating-linear-gradient(135deg, rgba(110,80,40,0.03) 0 2px, transparent 2px 5px),
    radial-gradient(80% 60% at 50% 0%, rgba(255,248,225,0.30), transparent 70%);
  mix-blend-mode:multiply; opacity:.7; }
/* 让内容浮在装饰之上（排除装饰层自身，否则会被通用规则盖掉 z-index）
   用 *:not() 覆盖所有非 div 直接子元素（顶层 svg/sc-if 等），更稳健 */
[data-theme="song"] #mldStage > *:not(.mld-song-scenery){ position:relative; z-index:1; }

/* 回纹/云纹角花：用更明显的折角强调四角 */
[data-theme="song"] .mld-corner{ width:16px !important; height:16px !important; border-width:1.5px !important; }

/* 标题竖排（备用，仅带 .mld-title-v 的元素生效；本次不添加到具体标题，可按需启用）*/
[data-theme="song"] .mld-title-v{ writing-mode:vertical-rl; text-orientation:upright; letter-spacing:4px !important; }

/* 毛笔笔触分隔线：用不均匀渐变 + 轻微羽化模拟枯笔（暖墨褐）*/
[data-theme="song"] .mld-divider{
  height:2px !important;
  background:
    linear-gradient(90deg, rgba(58,46,28,0.0) 0%, rgba(58,46,28,0.55) 8%, rgba(58,46,28,0.22) 40%,
                    rgba(58,46,28,0.42) 62%, rgba(58,46,28,0.05) 92%, transparent 100%) !important;
  filter:blur(0.2px); }

/* ===================== 顶栏·手卷（仅 song） =====================
   让 header 像一段展开的宋画长卷：左右木质卷轴(轴头) + 上下织锦描金/朱红隔水 + 暖绢沉光 */
[data-theme="song"] .mld-header{
  background:
    repeating-linear-gradient(90deg, transparent 0 5px, rgba(170,134,60,0.55) 5px 7px, transparent 7px 12px) top/100% 4px no-repeat,    /* 上织锦描金点纹 */
    repeating-linear-gradient(90deg, transparent 0 5px, rgba(170,134,60,0.55) 5px 7px, transparent 7px 12px) bottom/100% 4px no-repeat, /* 下织锦描金点纹 */
    linear-gradient(180deg, rgba(178,58,38,0.06), rgba(245,235,213,0.10) 22%,
                             rgba(245,235,213,0.10) 78%, rgba(178,58,38,0.05)) !important;
  box-shadow:
    inset 0 2px 0 rgba(168,132,58,0.55),    /* 上：描金隔水 */
    inset 0 4px 0 rgba(178,58,38,0.30),     /* 上：朱线 */
    inset 0 -2px 0 rgba(168,132,58,0.55),   /* 下：描金隔水 */
    inset 0 -4px 0 rgba(178,58,38,0.24) !important;
}
/* 左右木质卷轴：木纹横向渐变 + 两道铜箍描金环 + 立体投影 */
[data-theme="song"] .mld-header::before,
[data-theme="song"] .mld-header::after{
  content:''; position:absolute; top:0; bottom:0; width:15px; z-index:4; pointer-events:none;
  border-radius:7px;
  background:
    linear-gradient(180deg, transparent 13%, rgba(208,168,98,0.8) 14% 17%, transparent 18%,
                            transparent 82%, rgba(208,168,98,0.8) 83% 86%, transparent 87%),
    linear-gradient(90deg, #43300f 0%, #7c5a2a 30%, #a37c3e 50%, #6e4e26 72%, #3a2810 100%);
  box-shadow:0 2px 9px rgba(40,24,8,0.45), inset 0 0 0 1px rgba(255,228,170,0.18);
}
[data-theme="song"] .mld-header::before{ left:4px; }
[data-theme="song"] .mld-header::after{ right:4px; }

/* 宋画长卷 PNG：衬于标题文字之后，限制在标题与右侧信息之间的中段画框内。 */
[data-theme="song"] .mld-song-frieze{ display:block !important;
  position:absolute; left:52%; top:61%; width:760px; height:auto;
  transform:translate(-50%,-50%) scaleY(.68); z-index:-1; pointer-events:none;
  object-fit:contain; object-position:center; opacity:.6; }

/* ---- 飞燕（仅 song）：墨色剪影于卷轴上方掠过，衬于标题之后（z-index:-1） ---- */
.mld-swallows{ display:none; }
/* 容器与卷轴 PNG 对齐（同 frieze 的 left:52%/width:760），overflow:hidden 把前后文字区裁掉 */
[data-theme="song"] .mld-swallows{
  display:block; position:absolute; left:52%; top:0;
  width:760px; height:100%; transform:translateX(-50%);
  overflow:hidden; pointer-events:none; z-index:-1; }
[data-theme="song"] .mld-swallow{
  position:absolute; top:0; left:0; will-change:transform; }
[data-theme="song"] .mld-swallow svg{
  display:block; width:30px; height:auto; fill:rgba(54,40,24,0.72);
  transform-origin:50% 50%;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,0.12)); }
/* 振翅：上下压扁模拟翅膀拍动 */
[data-theme="song"] .mld-swallow-wing{ animation:mld-swallow-flap .58s ease-in-out infinite; }
@keyframes mld-swallow-flap{ 0%,100%{ transform:scaleY(1); } 50%{ transform:scaleY(.5); } }

/* 4 只各自的飞行轨迹、时长、延迟、振翅相位各不相同，营造随机感 */
[data-theme="song"] .mld-swallow-1{ animation:mld-swallow-a 32.5s linear infinite backwards; }
[data-theme="song"] .mld-swallow-2{ animation:mld-swallow-b 42.5s linear infinite 5s backwards; }
[data-theme="song"] .mld-swallow-3{ animation:mld-swallow-c 27.5s linear infinite 9s backwards; }
[data-theme="song"] .mld-swallow-4{ animation:mld-swallow-d 50s linear infinite 2.5s backwards; }
[data-theme="song"] .mld-swallow-2 .mld-swallow-wing{ animation-duration:.5s; }
[data-theme="song"] .mld-swallow-3 .mld-swallow-wing{ animation-duration:.62s; }
[data-theme="song"] .mld-swallow-4 .mld-swallow-wing{ animation-duration:.46s; }

/* 坐标相对容器（宽 760）；进/出在 -50 / 810，借 overflow:hidden 渐隐于画框两侧 */
/* 低带、左→右 */
@keyframes mld-swallow-a{
  0%{ transform:translate(-50px,38px) scale(.52); opacity:0; }
  8%{ opacity:.9; }
  34%{ transform:translate(250px,24px) scale(.62); }
  66%{ transform:translate(520px,46px) scale(.56); }
  92%{ opacity:.85; }
  100%{ transform:translate(810px,32px) scale(.48); opacity:0; } }
/* 高带、左→右，较小 */
@keyframes mld-swallow-b{
  0%{ transform:translate(-50px,16px) scale(.42); opacity:0; }
  9%{ opacity:.82; }
  40%{ transform:translate(290px,8px) scale(.5); }
  72%{ transform:translate(540px,20px) scale(.46); }
  91%{ opacity:.78; }
  100%{ transform:translate(810px,12px) scale(.4); opacity:0; } }
/* 中带、右→左 */
@keyframes mld-swallow-c{
  0%{ transform:translate(810px,24px) scale(.6); opacity:0; }
  8%{ opacity:.88; }
  38%{ transform:translate(520px,40px) scale(.66); }
  70%{ transform:translate(250px,18px) scale(.58); }
  92%{ opacity:.82; }
  100%{ transform:translate(-50px,30px) scale(.5); opacity:0; } }
/* 极高带、左→右，最小 */
@keyframes mld-swallow-d{
  0%{ transform:translate(-50px,10px) scale(.36); opacity:0; }
  10%{ opacity:.72; }
  44%{ transform:translate(330px,4px) scale(.44); }
  78%{ transform:translate(600px,14px) scale(.4); }
  90%{ opacity:.68; }
  100%{ transform:translate(810px,8px) scale(.34); opacity:0; } }
