@charset "UTF-8";
/* ============================================================
   晨光主题（浅色）—— 凡人修仙传·宗门 Wiki
   ------------------------------------------------------------
   设计说明：
   本站深色主题（immortal.css）取自模组自带的「月夜宗门山景」，
   主色是墨蓝夜空 + 鎏金题字。浅色版沿用同一套审美谱系，把它
   翻成「晨雾山门」：远山青灰、天光微白、题字仍用同一支金色，
   而不是照搬通用白底或别的站点配色。

   加载顺序：必须排在 immortal.css / treasury.css 之后，
   因为这一层是覆盖（overwrite），不是替代。

   触发方式：<html data-theme="light">
   — 深色不写任何规则，保持 immortal.css 原样。
   ============================================================ */

/* ── ① 变量层：与 immortal.css 的 :root 一一对应 ── */
/* --top-base：顶栏原始高度。软 404 提示条出现时用 calc 把 --top 撑高，
   让固定定位的侧栏同步让位（详见文末 ⑳）。 */
:root{--top-base:78px}
@media(max-width:760px){:root{--top-base:112px}}

:root[data-theme="light"]{
  color-scheme:light;

  /* 底与面：晨雾白 → 宣纸暖白，避免纯白刺眼 */
  --bg:#eef1ee;
  --paper:#fdfcf9;

  /* 文字：远山黛 → 松烟墨，四级层次 */
  --ink:#23303a;
  --muted:#5f6d78;

  /* 线：淡青灰，比深色版的对比更轻 */
  --line:#d2dbd6;

  /* 主强调色：日光金（深色版是 #e0c58a 月华金，这里压深以保证白底可读） */
  --green:#8a6a24;
  --green-dark:#1d3a30;
  --tint:#e6ece7;
  --gold:#8a6a24;

  /* 深色版的 --weave/--glow 类装饰色在浅色下不需要发光 */
  --sh-1:0 1px 3px rgba(35,48,58,.08);
  --sh-2:0 6px 20px rgba(35,48,58,.12);
}

/* ── ② 页面底：把月夜径向渐变换成晨雾 ── */
:root[data-theme="light"] body{
  background:
    radial-gradient(ellipse at 88% 4%, rgba(140,170,190,.20), transparent 52%),
    radial-gradient(ellipse at 3% 62%, rgba(176,158,110,.12), transparent 50%),
    var(--bg);
  color:var(--ink);
}

/* ── ③ 顶栏：深色版是墨蓝半透 + 鎏金描边 ── */
:root[data-theme="light"] .topbar{
  background:rgba(250,251,248,.94);
  border-bottom:1px solid #c9b4838c;
  box-shadow:0 6px 26px rgba(35,48,58,.09), inset 0 1px rgba(255,255,255,.9);
  color:var(--ink);
}
:root[data-theme="light"] .brand,
:root[data-theme="light"] .brand:hover{color:#22303a}
:root[data-theme="light"] .brand-divider{color:#9aa79f}
:root[data-theme="light"] .brand small{color:#6d7a72}
:root[data-theme="light"] .top-version{color:#5d6a63}
:root[data-theme="light"] .top-version:hover{color:#22303a}
:root[data-theme="light"] .menu-toggle{color:#22303a}

/* 搜索框：从「白 6% 玻璃」翻成「白底细描边」 */
:root[data-theme="light"] .search{
  background:#ffffff;
  border:1px solid #cbd6d0;
  color:#4a5751;
  box-shadow:inset 0 1px 2px rgba(35,48,58,.04);
}
:root[data-theme="light"] .search input{color:#22303a}
:root[data-theme="light"] .search input::placeholder{color:#8d9a93}
:root[data-theme="light"] .search kbd{border-color:#c3cec7;color:#6d7a72}

/* ── ④ 侧栏：深色版叠了月夜山景，浅色版换成晨雾山景（低透明度） ── */
:root[data-theme="light"] .sidebar{
  background:
    linear-gradient(rgba(250,251,248,.93), rgba(246,248,244,.96)),
    url('sect-landscape.webp') center/auto 100%;
  border-right:1px solid #d3dcd7;
}
:root[data-theme="light"] .sidebar-heading{
  color:#22303a;
  text-shadow:none;
  border-bottom:3px double #c9b483a6;
}
:root[data-theme="light"] .sidebar-heading small{color:#7c8a82}
:root[data-theme="light"] .nav-group>span{color:#8b978f}
:root[data-theme="light"] .nav-link{color:#48554f}
:root[data-theme="light"] .nav-link:hover{background:#e8ede8}
:root[data-theme="light"] .nav-link.active{
  color:#1d3a30;
  background:#e0e9e1;
  border-left-color:#8a6a24;
}
:root[data-theme="light"] .sidebar-foot{color:#6f7c74}
:root[data-theme="light"] .sidebar-foot strong{color:#1d3a30}

/* ── ⑤ 内容卡：深色版是玻璃拟态渐变 ── */
:root[data-theme="light"] .article{
  background:var(--paper);
  border:1px solid var(--line);
  box-shadow:var(--sh-1);
}
:root[data-theme="light"] .rail-box,
:root[data-theme="light"] .toc,
:root[data-theme="light"] .infobox{
  background:linear-gradient(145deg,#ffffff,#f7f9f6);
  border:1px solid #d5ddd8;
  box-shadow:var(--sh-1);
}
:root[data-theme="light"] .rail-title{color:#7a5f1f}
:root[data-theme="light"] .rail-box p{color:#5c6a63}
:root[data-theme="light"] .getting-started{
  background:#e9efe6;
  border-color:#cfdcc9;
}
:root[data-theme="light"] .getting-started h3{color:#22303a}
:root[data-theme="light"] .quick-link{border-bottom-color:#e6ece7;color:#48554f}
:root[data-theme="light"] .toc a{color:#5c6a63;border-left-color:#d5ddd8}
:root[data-theme="light"] .toc a:hover{border-left-color:#8a6a24;color:#8a6a24}

/* ── ⑥ 首页主视觉：深色版是整幅月夜山景 + 暗角压字 ── */
:root[data-theme="light"] .welcome{
  border:1px solid #c9b483a6;
  background:#5c7488;
  box-shadow:0 18px 42px rgba(35,48,58,.16), 0 0 0 5px rgba(201,180,131,.10);
}
/* 浅色下白昼山景本身够亮，压暗层要减弱，否则题字糊 */
:root[data-theme="light"] .welcome-shade{
  background:
    linear-gradient(90deg, rgba(14,32,44,.72), rgba(18,40,54,.42) 40%, rgba(20,44,58,.06) 76%),
    linear-gradient(0deg, rgba(10,24,34,.55), transparent 50%);
}
:root[data-theme="light"] .landscape{
  filter:saturate(1.02) brightness(1.06) contrast(1.02);
}
/* 题字：浅色下仍是同一支金色，但不发光晕 */
:root[data-theme="light"] .welcome h1{
  color:#f6e8c4;
  text-shadow:0 2px 4px rgba(8,18,26,.62);
}
:root[data-theme="light"] .welcome h1 span{color:#eae0cd}
:root[data-theme="light"] .welcome p{color:#dde3e6}
:root[data-theme="light"] .welcome-copy>span{color:#e2d4ac}
:root[data-theme="light"] .hero-version{color:#f0f3f4;text-shadow:0 1px 5px rgba(0,0,0,.5)}
:root[data-theme="light"] .welcome:before{border-color:rgba(233,206,139,.62)}
:root[data-theme="light"] .welcome-note strong{color:#22303a}
:root[data-theme="light"] .welcome-note p{color:var(--muted)}

/* ── ⑦ 统计条 ── */
:root[data-theme="light"] .stats{border-color:var(--line)}
:root[data-theme="light"] .stats>div{border-right-color:var(--line)}
:root[data-theme="light"] .stats b{color:#1d3a30}
:root[data-theme="light"] .stats span{color:var(--muted)}

/* ── ⑧ 标题与正文 ── */
:root[data-theme="light"] .article h1{color:#1c2a33;text-shadow:none}
:root[data-theme="light"] .article-section>h2{
  color:#1f2d36;
  text-shadow:none;
  border-bottom-color:var(--line);
}
:root[data-theme="light"] .article-section>h2:before{background:#8a6a24}
:root[data-theme="light"] .article p,
:root[data-theme="light"] .article li{color:#2b3944}
:root[data-theme="light"] .lead,
:root[data-theme="light"] .section-intro{color:var(--muted)}
:root[data-theme="light"] .eyebrow{color:#7a5f1f}
:root[data-theme="light"] .effect-list p{border-left-color:#dde5e0;color:#2b3944}
:root[data-theme="light"] .notice{
  border-color:#ddd6b7;
  border-left-color:#ac9750;
  background:#fbf8ee;
  color:#675a33;
}

/* ── ⑨ 卡片族：深色版走玻璃 + 金色描边 ── */
:root[data-theme="light"] .category-card,
:root[data-theme="light"] .npc-card,
:root[data-theme="light"] .mod-card,
:root[data-theme="light"] .item-card,
:root[data-theme="light"] .featured-card{
  background:linear-gradient(150deg,#ffffff,#f8faf7);
  border-color:#d5ddd8;
  box-shadow:0 2px 8px rgba(35,48,58,.05);
  color:var(--ink);
}
:root[data-theme="light"] .category-card:hover,
:root[data-theme="light"] .npc-card:hover,
:root[data-theme="light"] .mod-card:hover,
:root[data-theme="light"] .item-card:hover,
:root[data-theme="light"] .featured-card:hover{
  border-color:#b99e5c;
  background:linear-gradient(150deg,#fffef9,#f6f9f4);
}
:root[data-theme="light"] .category-card strong,
:root[data-theme="light"] .npc-card strong,
:root[data-theme="light"] .item-card strong,
:root[data-theme="light"] .mod-card-head h3,
:root[data-theme="light"] .featured-card strong{color:#1e2c35}
:root[data-theme="light"] .category-card small,
:root[data-theme="light"] .npc-card small,
:root[data-theme="light"] .item-card small,
:root[data-theme="light"] .featured-card small,
:root[data-theme="light"] .class-label{color:var(--muted)}
:root[data-theme="light"] .silk-ribbon{color:#7a5f1f}
:root[data-theme="light"] .exhibit-tier{color:#8a6a24}
:root[data-theme="light"] .portrait-label>span:last-child{color:#7a5f1f}
:root[data-theme="light"] .mod-english{color:var(--muted)}
:root[data-theme="light"] .mod-kind{color:#44604a;background:#edf4e7;border-color:#d0ddc8}
:root[data-theme="light"] .mod-kind.optional{color:#687569;background:#f0f2ed;border-color:#dde2d8}
:root[data-theme="light"] .mod-workshop{border-color:#b8cbb2;background:#fff}
:root[data-theme="light"] .mod-card-head img{border-color:#d5ddd8;background:#fff}

/* ── ⑩ 图文框与图版 ── */
:root[data-theme="light"] .infobox>h2{background:#1d3a30;color:#f6f1e4}
:root[data-theme="light"] .item-portrait,
:root[data-theme="light"] .npc-portrait{background:#f2f5f0}
:root[data-theme="light"] .infobox dt{color:var(--muted)}
:root[data-theme="light"] .infobox dd{color:#1e2c35}
:root[data-theme="light"] .internal-id{color:var(--muted);border-top-color:var(--line)}

/* ── ⑪ 表单与目录控件 ── */
:root[data-theme="light"] .catalog-controls label{color:var(--muted)}
:root[data-theme="light"] .catalog-controls input,
:root[data-theme="light"] .catalog-controls select{
  background:#fff;
  border-color:#cbd6d0;
  color:#22303a;
}
:root[data-theme="light"] .result-count{color:var(--muted)}
:root[data-theme="light"] .steps{background:#eaece7;border-color:#d8ded4}
:root[data-theme="light"] .steps a{color:var(--ink)}
:root[data-theme="light"] .steps p{color:#5f6a62}
:root[data-theme="light"] .step-number{color:#8a9a86}
:root[data-theme="light"] .empty-state{background:#f2f6ef;color:var(--muted)}

/* ── ⑫ 表格 ── */
:root[data-theme="light"] th{background:#e9efe6;color:#2f4a37;border-color:#d7e0d2}
:root[data-theme="light"] td{border-color:#dde5d8;color:#2b3944}
:root[data-theme="light"] tbody tr:nth-child(even){background:#f8faf6}
:root[data-theme="light"] tbody tr:hover{background:#f2f6ef}
:root[data-theme="light"] blockquote{background:#f5f7f2;border-left-color:#b1ba9d;color:#4d5a45}

/* ── ⑬ 按钮 ── */
:root[data-theme="light"] .button{
  background:#1d3a30;
  border-color:#1d3a30;
  color:#f6f1e4;
}
:root[data-theme="light"] .button:hover{background:#122720;color:#fff}

/* ── ⑭ 面包屑 / 页脚 / 搜索下拉 ── */
:root[data-theme="light"] .breadcrumb{color:var(--muted)}
:root[data-theme="light"] .breadcrumb a{color:#4a6b55}
:root[data-theme="light"] footer{color:#6f7c74;border-top-color:var(--line)}
:root[data-theme="light"] .search-suggestions{
  background:#fff;
  border-color:var(--line);
  box-shadow:0 12px 34px rgba(35,48,58,.18);
  color:var(--ink);
}
:root[data-theme="light"] .suggestion:hover,
:root[data-theme="light"] .suggestion:focus{background:#eef3ec}
:root[data-theme="light"] .suggestion small{color:var(--muted)}

/* ── ⑮ 装饰层：深色下是发光粒子/云霞，浅色下减弱或隐藏 ── */
:root[data-theme="light"] .spirit-field i{
  background:#8a6a24;
  opacity:.30;
}
:root[data-theme="light"] .hero-haze{opacity:.18}
:root[data-theme="light"] .gilt-corners i{border-color:rgba(176,150,90,.55)}

/* ── ⑯ 图片：深色下轻微降亮度，浅色下反而略微加对比 ── */
:root[data-theme="light"] .item-card img,
:root[data-theme="light"] .npc-card img,
:root[data-theme="light"] .featured-card img,
:root[data-theme="light"] .category-card img{
  filter:saturate(1.03) contrast(1.02);
}

/* ── ⑰ 主题切换按钮：沿用动效开关的视觉语言 ── */
.theme-toggle{
  border:1px solid #ffffff40;
  background:#ffffff14;
  color:#e8e2d4;
  border-radius:3px;
  padding:5px 10px;
  font-size:.8125rem;
  line-height:1.4;
  display:inline-flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
  transition:background .15s, border-color .15s;
}
.theme-toggle:hover{background:#ffffff26;border-color:#ffffff66}
.theme-toggle .th-symbol{font-size:15px;line-height:1}
:root[data-theme="auto"] .theme-toggle{
  /* 「跟随时间」不描边，与手动模式区分，一眼可见当前不是自动 */
}
:root[data-theme-mode="light"] .theme-toggle,
:root[data-theme-mode="dark"] .theme-toggle{
  border-color:#c9b48399;
  background:#c9b4831f;
}
:root[data-theme="light"] .theme-toggle{
  border-color:#c3cec7;
  background:#ffffff;
  color:#3d4a44;
}
:root[data-theme="light"] .theme-toggle:hover{background:#f1f5f1;border-color:#a9b8b0}

/* ── ⑱ 打印：任何主题下都走白底黑字 ── */
@media print{
  :root[data-theme="light"] body,
  :root[data-theme="light"] .article{background:#fff;color:#000}
}

/* ── ⑲ 低动效偏好下，主题按钮不做过渡 ── */
@media (prefers-reduced-motion:reduce){
  .theme-toggle{transition:none}
}

/* ── ⑳ 软 404 提示条 ──
   为什么需要：Cloudflare Pages 的 SPA 兜底会把任何坏链返回首页副本（HTTP 200），
   访客看不出走错。known-paths.js 比对后插入这条提示。

   ⚠️ 布局处理：提示条插在 .topbar 之前。.topbar 是 sticky、.sidebar 是
   fixed+top:var(--top)，若提示条占了文档流高度会把顶栏下推，而侧栏 top 是
   固定值 → 侧栏标题会被顶栏压住。所以给 <html> 打 data-missing 标记，
   用 CSS 变量把 --top 整体加上提示条高度，让侧栏与主区同步让位。 */
.missing-bar{
  height:var(--missing-h,38px);
  box-sizing:border-box;
  display:flex;
  align-items:center;
  padding:0 22px;
  font-size:.8125rem;
  line-height:1.4;
  color:#f2e2c4;
  overflow:hidden;
  background:linear-gradient(90deg,#6b4a12,#8a6518 45%,#6b4a12);
  border-bottom:1px solid #d8b45c80;
}
/* 内容用单行省略，避免长路径把布局撑坏 */
.missing-bar .mb-txt{
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
/* 提示条出现时把 --top 撑高：默认按桌面单行 38px，
   JS 会实测真实高度写入 --missing-h 覆盖（移动端换行时高度不固定）。 */
:root[data-missing="1"]{--missing-h:38px;--top:calc(78px + var(--missing-h))}
.missing-bar b{
  font-weight:600;
  color:#ffe9b0;
  word-break:break-all;
  padding:0 2px;
}
.missing-bar a{color:#fff;text-decoration:underline;text-underline-offset:3px;font-weight:600}
.missing-bar a:hover{color:#ffe9b0}
:root[data-theme="light"] .missing-bar{
  color:#4a3810;
  background:linear-gradient(90deg,#fdf3d8,#fbe9b8 45%,#fdf3d8);
  border-bottom:1px solid #c9a94e90;
}
:root[data-theme="light"] .missing-bar b{color:#7a4e06}
:root[data-theme="light"] .missing-bar a{color:#6b4a12}
:root[data-theme="light"] .missing-bar a:hover{color:#3d2a06}
@media(max-width:760px){
  /* 移动端：路径可能很长，单行省略会看不清，改为整块换行 */
  .missing-bar{
    height:auto;
    min-height:52px;
    display:block;
    padding:9px 16px;
    font-size:.75rem;
    line-height:1.55;
    overflow:visible;
  }
  .missing-bar .mb-txt{
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
  }
}
@media print{.missing-bar{display:none}}
