/* 水墨龙凤 · 仙山书院主题层（最后加载，仅覆盖外观） */
body[data-ui="xianxia"]{
  --x-page:#F6F1E7;
  --x-paper:#FFFCF6;
  --x-paper-deep:#FBF5E9;
  --x-ink:#1E2C31;
  --x-muted:#5B645F;
  --x-gold:#A78648;
  --x-gold-soft:#D8C79C;
  --x-action:#5CB85C;
  --x-action-ink:#173C24;
  --x-title-font:"STZhongsong","Songti SC","SimSun",serif;
  --x-body-font:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;
  background:
    url("/static/art/xianxia/paper-tile-333241b2080c.webp") repeat,
    linear-gradient(180deg,#F8F3E9 0%,#F6F1E7 42%,#F3EDE1 100%);
  color:var(--x-ink);
  font-family:var(--x-body-font);
}

/* ---------- 场景装饰层 ---------- */
.xianxia-scene{
  position:fixed; inset:0; z-index:-1; pointer-events:none; overflow:hidden;
}
.xianxia-scene .x-art{position:absolute; background-repeat:no-repeat; background-size:contain; opacity:0;
  transition:opacity .35s ease}
/* 桌面山水：整页底图，中央留白给内容 */
.xianxia-scene .x-band{
  inset:0; width:100%; height:100svh; transform:none;
  background-image:url("/static/art/xianxia/landscape-wide-64599a1aeedd.webp");
  background-size:cover; background-position:center top;
}
/* 完整青龙 / 凤凰：真实透明通道，按原比例完整显示 */
.xianxia-scene .x-dragon,
.xianxia-scene .x-phoenix{
  top:100px; width:clamp(170px,23vw,330px); height:min(72svh,620px);
  background-size:contain; background-position:center top;
}
.xianxia-scene .x-dragon{left:clamp(8px,2vw,36px);
  background-image:url("/static/art/xianxia/dragon-b2c4b98436d8.webp");}
.xianxia-scene .x-phoenix{right:clamp(8px,2vw,36px);
  background-image:url("/static/art/xianxia/phoenix-8f83810ee636.webp");}

/* 首页、知识树与统计沿用同一幅清晰山水；阅读区域由实色纸面承托。 */
body:is([data-scene="home"],[data-scene="tree"],[data-scene="statistics"]) .x-band{opacity:.92}
body:is([data-scene="home"],[data-scene="tree"],[data-scene="statistics"]) .x-dragon,
body:is([data-scene="home"],[data-scene="tree"],[data-scene="statistics"]) .x-phoenix{opacity:1}
/* 登录页：龙凤同首页，山水稍淡 */
body[data-scene="auth"] .x-band{opacity:.7}
body[data-scene="auth"] .x-dragon,
body[data-scene="auth"] .x-phoenix{opacity:.55}
/* 其他页面：淡化背景，收起角色，保证正文可读 */
body[data-scene="directory"] .x-band{opacity:.35}
body[data-scene="practice"] .x-band{opacity:.14}
body[data-scene="lesson"] .x-band{opacity:.08}
body[data-scene="trial-preview"] .x-band{opacity:.4}
body[data-scene="trial-exam"] .x-band{opacity:.1}
body[data-scene="result"] .x-band{opacity:.3}
body[data-scene="knowledge"] .x-band{opacity:.28}
body[data-scene="settings"] .x-band{opacity:.2}
body[data-scene="practice"] .x-dragon,
body[data-scene="practice"] .x-phoenix,
body[data-scene="lesson"] .x-dragon,
body[data-scene="lesson"] .x-phoenix,
body[data-scene="trial-exam"] .x-dragon,
body[data-scene="trial-exam"] .x-phoenix{opacity:0}
body[data-scene="knowledge"] .x-dragon,
body[data-scene="knowledge"] .x-phoenix{opacity:.14}
body[data-scene="directory"] .x-dragon,
body[data-scene="directory"] .x-phoenix{opacity:.4}
body[data-scene="trial-preview"] .x-dragon,
body[data-scene="trial-preview"] .x-phoenix,
body[data-scene="result"] .x-dragon,
body[data-scene="result"] .x-phoenix{opacity:.28}

/* ---------- 顶栏 ---------- */
body[data-ui="xianxia"] header.site-head{
  position:relative; z-index:2;
  background:linear-gradient(180deg,var(--x-paper),var(--x-paper-deep));
  border-bottom:1px solid var(--x-gold-soft);
  box-shadow:0 1px 0 #fff inset;
}
body[data-ui="xianxia"] nav.tabs{position:relative; z-index:2}
body[data-ui="xianxia"] .site-head .logo{
  font-family:var(--x-title-font); font-weight:700; color:var(--x-ink); letter-spacing:2px;
}
body[data-ui="xianxia"] .site-head .who .chip{
  background:#F1E7D2; color:#6B5327; border:1px solid var(--x-gold-soft); border-radius:6px;
}
body[data-ui="xianxia"] .site-head .who button{
  background:transparent; color:var(--x-muted); border:1px solid var(--x-gold-soft); border-radius:6px;
}

/* ---------- 导航 ---------- */
body[data-ui="xianxia"] nav.tabs{border-bottom:1px solid var(--x-gold-soft)}
body[data-ui="xianxia"] nav.tabs button{
  font-family:var(--x-body-font); color:var(--x-muted); border-radius:8px 8px 0 0;
  background:var(--x-paper); border:1px solid #E7DBC4; backdrop-filter:none;
}
body[data-ui="xianxia"] nav.tabs button:hover:not(.active){background:#F4ECDC; border-color:var(--x-gold)}
body[data-ui="xianxia"] nav.tabs button.active{
  background:var(--x-action); color:var(--x-action-ink); box-shadow:0 2px 0 #00000008;
}

/* ---------- 纸面卡片 ---------- */
body[data-ui="xianxia"] .card{
  background:linear-gradient(180deg,var(--x-paper),var(--x-paper-deep));
  border:1px solid var(--x-gold-soft); border-radius:12px;
  box-shadow:0 1px 2px #6b532714, 0 0 0 3px #fff6 inset;
}
body[data-ui="xianxia"] .card h3,
body[data-ui="xianxia"] .card h2,
body[data-ui="xianxia"] .practice-heading h1,
body[data-ui="xianxia"] .lesson h1{font-family:var(--x-title-font); letter-spacing:.5px}

/* ---------- 按钮 ---------- */
body[data-ui="xianxia"] .btn{
  background:var(--x-action); color:var(--x-action-ink); border:1px solid #3E9142;
  box-shadow:0 1px 0 #ffffff55 inset, 0 1px 2px #173c2414; font-weight:650;
}
body[data-ui="xianxia"] .btn:hover{background:#54AC54}
body[data-ui="xianxia"] .btn.ghost{
  background:transparent; color:var(--x-action-ink); border:1px solid var(--x-gold);
}
body[data-ui="xianxia"] .btn.ghost:hover{background:#F4ECDC}
body[data-ui="xianxia"] .btn.danger{background:transparent; color:var(--bad); border-color:var(--bad)}
body[data-ui="xianxia"] .btn.orange{background:#C08A3E; border-color:#A2701F; color:#2A1D08}
/* 登录页保留主/次/最弱三级 */
body[data-ui="xianxia"] .auth .btn.auth-register{
  background:transparent; border:1px solid var(--x-gold); color:var(--x-action-ink);
}
body[data-ui="xianxia"] .auth .btn.auth-guest{
  background:transparent; border:1px solid transparent; color:var(--x-muted); font-weight:500;
}
body[data-ui="xianxia"] .auth .btn.auth-guest:hover{background:#F2EADB}

/* ---------- 首页：山水舞台 + 功法卷册 ---------- */
body[data-ui="xianxia"][data-scene="home"] .xianxia-hero{
  position:relative; height:clamp(56px,6vw,88px); margin:2px 0 8px;
  background:transparent; border:0; box-shadow:none; overflow:visible;
}

body[data-ui="xianxia"] .modules-grid{gap:10px}
body[data-ui="xianxia"] .modules-grid .module-card{
  display:flex; flex-direction:column; align-items:stretch; position:relative;
  padding:0; overflow:hidden; min-height:0; cursor:pointer;
  background:linear-gradient(180deg,var(--x-paper),#FDF8EF);
}
body[data-ui="xianxia"] .modules-grid .module-card:hover{
  border-color:var(--x-gold); transform:translateY(-2px);
  box-shadow:0 10px 24px #6b532721, 0 0 0 3px #fff8 inset;
}
body[data-ui="xianxia"] .module-art{width:100%; aspect-ratio:27/20; background:#F1E9DA; overflow:hidden}
body[data-ui="xianxia"] .module-art img{width:100%; height:100%; object-fit:cover; display:block}
body[data-ui="xianxia"] .module-identity{padding:7px 12px 9px; gap:4px; align-items:flex-start}
body[data-ui="xianxia"] .module-identity .module-illustration{display:none}
body[data-ui="xianxia"] .module-name{font-family:var(--x-title-font); font-size:16px; letter-spacing:.4px; line-height:1.25}
body[data-ui="xianxia"] .module-card .go{
  position:absolute; top:10px; right:12px; margin:0; padding:2px 8px; border-radius:999px;
  background:#FFFCF6E6; color:#6B5327; border:1px solid var(--x-gold-soft); font-size:15px;
}
body[data-ui="xianxia"] .module-level{padding-bottom:12px}

/* 继续区域：木牌式 */
body[data-ui="xianxia"] .resume-panel{
  background:linear-gradient(180deg,#FFFCF6,#FAF3E6); border:1px solid var(--x-gold-soft);
  border-radius:12px; box-shadow:0 1px 2px #6b532714;
}
body[data-ui="xianxia"] .resume-label{font-family:var(--x-title-font)}

/* ---------- 答题页：纸面双栏 ---------- */
body[data-ui="xianxia"] .practice-wrap{max-width:1320px}
body[data-ui="xianxia"] .practice-stage{
  background:linear-gradient(180deg,var(--x-paper),var(--x-paper-deep));
  border:1px solid var(--x-gold-soft); border-radius:14px;
  box-shadow:0 8px 22px #6b532717, 0 0 0 4px #fff8 inset;
}
body[data-ui="xianxia"] .practice-panel-label{
  font-family:var(--x-title-font); color:#6B5327;
  border-bottom:1px solid var(--x-gold-soft);
}
body[data-ui="xianxia"] .practice-answer .stem{
  padding:0 0 14px; margin-bottom:14px; border-bottom:1px dashed var(--x-gold-soft);
  font-size:17px; line-height:1.75;
}
body[data-ui="xianxia"] .opt{
  background:#FFFDF8; border:1px solid #E4D8BE; border-radius:10px;
}
body[data-ui="xianxia"] .opt .k{
  background:#F4ECDC; color:#6B5327; border:1px solid var(--x-gold-soft);
}
body[data-ui="xianxia"] .opt.selected{border-color:var(--x-action); background:#EDF7EC}
body[data-ui="xianxia"] .opt.selected .k{background:var(--x-action); color:var(--x-action-ink); border-color:#3E9142}
body[data-ui="xianxia"] .opt.right{border-color:var(--ok-line); background:var(--ok-bg)}
body[data-ui="xianxia"] .opt.wrong{border-color:var(--bad-line); background:var(--bad-bg)}

/* ---------- 知识树 / 统计 / 讲义 ---------- */
body[data-ui="xianxia"] .map-heading,
body[data-ui="xianxia"] .map-module,
body[data-ui="xianxia"] .map-chapter{background:linear-gradient(180deg,var(--x-paper),var(--x-paper-deep))}
body[data-ui="xianxia"] .map-root{
  background:#F4ECDC; color:#6B5327; border:1px solid var(--x-gold-soft); font-family:var(--x-title-font);
}
body[data-ui="xianxia"] .map-leaf{border-left-color:var(--x-gold-soft); background:#FFFCF6}
/* 统计正文使用不透明暖纸面，不依靠淡化整幅背景来获得对比度。 */
body[data-ui="xianxia"] .answer-statistics{
  padding:24px; background:linear-gradient(180deg,var(--x-paper-deep),#F6EFDF);
  border:1px solid var(--x-gold-soft); border-radius:12px;
  box-shadow:0 2px 8px #6b532714;
}
body[data-ui="xianxia"] .answer-statistics h2{font-family:var(--x-title-font)}
body[data-ui="xianxia"] .answer-metric{
  background:#F4ECDC; border-color:var(--x-gold-soft);
}
body[data-ui="xianxia"] .statistics-period,
body[data-ui="xianxia"] .statistics-table-wrap{
  background:var(--x-paper-deep); border-color:var(--x-gold-soft);
}
body[data-ui="xianxia"] .statistics-table tbody tr:hover{background:#F1E7D2}
body[data-ui="xianxia"] .statistics-table th,
body[data-ui="xianxia"] .statistics-table td{border-bottom-color:#E2D6BD}
body[data-ui="xianxia"] .statistics-table thead th,
body[data-ui="xianxia"] .answer-statistics thead th{background:#F4ECDC}
body[data-ui="xianxia"] .statistics-table tbody th{background:transparent}
body[data-ui="xianxia"] .lecture-prose{font-family:var(--x-body-font); color:#28343a}

/* 答题/渡劫时不露出全局导航，退出入口保留在工具条 */
body[data-ui="xianxia"].in-practice header.site-head,
body[data-ui="xianxia"].in-practice nav.tabs{display:none}

@media (max-width:1179px){
  body[data-ui="xianxia"] .modules-grid .module-card{min-height:0}
}
@media (max-width:767px){
  body[data-ui="xianxia"] .xianxia-scene .x-band{
    background-image:url("/static/art/xianxia/landscape-narrow-0f7f25529d6e.webp"); background-size:cover;
  }
  body:is([data-scene="home"],[data-scene="tree"],[data-scene="statistics"]) .xianxia-scene .x-dragon,
  body:is([data-scene="home"],[data-scene="tree"],[data-scene="statistics"]) .xianxia-scene .x-phoenix,
  body[data-scene="auth"] .xianxia-scene .x-dragon,
  body[data-scene="auth"] .xianxia-scene .x-phoenix{display:none}
  body[data-ui="xianxia"][data-scene="home"] .xianxia-hero{
    height:auto; aspect-ratio:1170 / 487; margin:8px 0 16px;
    background-image:url("/static/art/xianxia/hero-mobile-small-733c629dae81.webp");
    background-image:image-set(url("/static/art/xianxia/hero-mobile-small-733c629dae81.webp") 1x,
                               url("/static/art/xianxia/hero-mobile-15e78482f96b.webp") 2x);
    background-size:contain; background-repeat:no-repeat; background-position:center;
  }
  body[data-ui="xianxia"] .module-name{font-size:17px}
  body[data-ui="xianxia"] .answer-statistics{padding:18px 14px}
}
@media (prefers-reduced-motion:reduce){
  body[data-ui="xianxia"] .modules-grid .module-card{transition:none}
}

/* 矮屏再压一档，避免首页需要滚动 */

/* 练习页降低亮度：暖纸底、去掉内白圈、弱化阴影 */
body[data-ui="xianxia"] .practice-stage{
  background:linear-gradient(180deg,#FBF5E7,#F4EBD8);
  box-shadow:0 6px 18px #6b532715;
}
body[data-ui="xianxia"] .practice-panel-label{color:#7B6539}
body[data-ui="xianxia"] .opt{background:#FBF5E7; border-color:#DCCEB0}
body[data-ui="xianxia"] .opt:hover:not(.selected):not(.right):not(.wrong){background:#F7EFDC}
body[data-ui="xianxia"] .practice-answer .stem{color:#2F3A36}
body[data-ui="xianxia"][data-scene="practice"] .x-band{opacity:.2}

/* 做题页配色再降一档：结果块与提示条不刺眼 */
body[data-ui="xianxia"] .opt.right{border-color:#C9DCC1; background:#F2F7EC}
body[data-ui="xianxia"] .opt.wrong{border-color:#E2CBB8; background:#FAF1EA}
body[data-ui="xianxia"] .timing-note{background:#F5EDDC; border-color:#E2D3B5; color:#6E5A33}
body[data-ui="xianxia"] .timing-note.ok{background:#EFF5E9; border-color:#CBDCC4; color:#3C5F41}

/* 材料区并入暖纸，避免冷白/偏绿的高亮块 */
body[data-ui="xianxia"] .practice-reading .material{
  background:#FBF5E7; border-color:#E4D6B8;
}
body[data-ui="xianxia"] .material table{background:#FDF8EC}
body[data-ui="xianxia"] .material th{background:#F1E6CC; border-color:#E0D2B4}
body[data-ui="xianxia"] .material td{border-color:#E6DAC0}
body[data-ui="xianxia"] .practice-stage{
  background:linear-gradient(180deg,#F9F2E2,#F2E8D3);
}
body[data-ui="xianxia"] .opt{background:#F8F0DD}

/* 练习、分块目录与学习页：柔和外围底色 */
body[data-ui="xianxia"]:is(.in-practice,[data-scene="practice"],[data-scene="directory"],[data-scene="lesson"]){background:#e8e7df}
body[data-ui="xianxia"]:is(.in-practice,[data-scene="practice"],[data-scene="directory"],[data-scene="lesson"]) .xianxia-scene{visibility:hidden}

/* 提交栏融入暖纸背景 */
body[data-ui="xianxia"] .practice-answer .confirm-bar{background:transparent}
