/* ==========================================================
   且慢 · 样式表

   设计令牌（想换配色，改下面这几个变量就够了）：
   --paper     纸（背景）
   --ink       墨（标题）
   --ink-soft  正文
   --ink-faint 日期、页脚等次要信息
   --cinnabar  朱砂（印章和链接，全站唯一的彩色）
   暗色模式跟随系统自动切换，无需任何开关。
   ========================================================== */
:root{
  color-scheme: light;
  --paper:#FCFCFA;
  --ink:#26241F;
  --ink-soft:#45433C;
  --ink-faint:#76746B;
  --cinnabar:#B23A2A;
  --cinnabar-deep:#8F2D20;
  --serif:"Songti SC","Noto Serif SC","Noto Serif CJK SC","Source Han Serif SC","SimSun",Georgia,serif;
  --sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Noto Sans SC","Noto Sans CJK SC","Source Han Sans SC","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;
}
@media (prefers-color-scheme: dark){
  :root{
    color-scheme: dark;
    --paper:#191814;
    --ink:#ECE9E1;
    --ink-soft:#CFCBC1;
    --ink-faint:#918D83;
    --cinnabar:#D0664C;
    --cinnabar-deep:#E08568;
  }
  ::selection{background:rgba(208,102,76,.28)}
  a{text-decoration-color:rgba(208,102,76,.45)}
  a:hover{text-decoration-color:rgba(224,133,104,.6)}
}

/* ===== 基础 ===== */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  min-height:100vh;
  min-height:100svh;
  display:flex;
  flex-direction:column;
  background:var(--paper);
  color:var(--ink-soft);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.9;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
main{flex:1}
.wrap{width:100%;max-width:660px;margin:0 auto;padding:0 28px}
::selection{background:rgba(178,58,42,.14)}
a{color:var(--cinnabar);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:rgba(178,58,42,.38)}
a:hover{color:var(--cinnabar-deep);text-decoration-color:rgba(143,45,32,.55)}
:focus-visible{outline:2px solid var(--cinnabar);outline-offset:3px;border-radius:2px}

.skip-link{position:absolute;left:-9999px;top:0}
.skip-link:focus{left:16px;top:16px;padding:10px 16px;background:var(--ink);color:var(--paper);text-decoration:none;border-radius:4px;z-index:9}

/* ===== 页头 ===== */
.site{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding-top:46px;
  animation:rise .55s cubic-bezier(.22,.61,.36,1) both;
}
.brand{display:inline-flex;align-items:center;gap:13px;text-decoration:none;color:var(--ink)}
.seal{
  width:46px;height:46px;border-radius:5px;
  background:var(--cinnabar);color:#FCFCFA;
  font-family:var(--serif);font-size:26px;line-height:1;
  display:grid;place-items:center;
  padding-bottom:2px;
}
.site-name{font-family:var(--serif);font-size:20px;font-weight:600;letter-spacing:.08em}
.brand img.logo{width:46px;height:46px;border-radius:5px;object-fit:cover;display:block}
.nav{display:flex;gap:22px;font-size:14.5px}
.nav a{color:var(--ink-faint);text-decoration:none;font-weight:500;letter-spacing:.02em;padding:10px 0}
.nav a:hover{color:var(--ink)}
.nav a[aria-current="page"]{color:var(--ink)}

/* ===== 首页 ===== */
.intro{margin:58px 0 0;font-size:17px;line-height:1.95}
.post-list{list-style:none;margin:44px 0 0;padding:0}
.post-list>li{padding:30px 0}
.post-list>li:first-child{padding-top:0}
.post-list>li:last-child{padding-bottom:0}
.post-title{margin:0;font-family:var(--serif);font-size:21.5px;font-weight:600;line-height:1.55;letter-spacing:.02em}
.post-title a{color:var(--ink);text-decoration:none}
.post-title a:hover{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px;text-decoration-color:rgba(178,58,42,.5)}
.post-excerpt{margin:9px 0 0;font-size:15.5px;line-height:1.85}
.post-meta{margin:10px 0 0;display:flex;gap:16px;font-size:13px;line-height:1.6;color:var(--ink-faint);letter-spacing:.02em}
.post-meta a{color:inherit;text-decoration:none}
.post-meta a:hover{color:var(--cinnabar);text-decoration:underline;text-underline-offset:3px}

/* ===== 文章页 / 独立页 ===== */
.back{margin:52px 0 0;font-size:14px}
.back a{color:var(--ink-faint);text-decoration:none;display:inline-block;padding:6px 0}
.back a:hover{color:var(--cinnabar);text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(178,58,42,.38)}
.page-title{margin:56px 0 0;font-family:var(--serif);font-size:27px;font-weight:600;line-height:1.5;letter-spacing:.02em;color:var(--ink)}
.post .page-title{margin-top:24px}
.post .post-meta{margin-top:14px}
.post-body{margin-top:34px;font-size:17px;line-height:1.95}
.post-body p{margin:0 0 1.2em}
.post-body p:last-child{margin-bottom:0}
.post-body strong{font-weight:600;color:var(--ink)}
.post-body blockquote{
  margin:1.7em 0;padding:2px 0 2px 24px;
  border-left:2px solid rgba(178,58,42,.45);
  font-family:var(--serif);font-size:17.5px;line-height:1.95;color:var(--ink-soft);
}
.post-body blockquote p{margin:0}
.post-body img{max-width:100%;height:auto;border-radius:3px}

/* 音乐与嵌入 */
.music{margin:1.7em 0}
.music audio{width:100%;display:block}
.post-body iframe{border:0;width:100%;display:block}
.post-body .embed-music163{height:66px}
.post-body .embed-bili{position:relative;padding-top:56.25%}
.post-body .embed-bili iframe{position:absolute;top:0;left:0;width:100%;height:100%}

/* 文章页底部：上一篇 / 下一篇 */
.post-nav{margin-top:46px;display:flex;gap:24px;justify-content:space-between;font-size:14.5px;line-height:1.7}
.post-nav a{color:var(--ink-faint);text-decoration:none;max-width:48%}
.post-nav a:hover{color:var(--cinnabar)}
.post-nav .next{text-align:right;margin-left:auto}

/* ===== 归档页 ===== */
.archive-intro{margin:26px 0 0;color:var(--ink-soft)}
.archive-head{font-family:var(--serif);font-size:18px;font-weight:600;color:var(--ink);letter-spacing:.02em;margin:54px 0 12px}
.archive-section{margin-top:34px}
.archive-year{font-family:var(--serif);font-size:15px;font-weight:600;color:var(--ink-faint);letter-spacing:.14em;margin:0 0 8px}
.archive-list{list-style:none;margin:0;padding:0}
.archive-list li{display:flex;gap:16px;align-items:baseline;padding:6px 0}
.archive-list time{color:var(--ink-faint);font-size:13.5px;flex:0 0 auto;letter-spacing:.02em}
.archive-list a{font-family:var(--serif);font-size:16.5px;color:var(--ink);text-decoration:none}
.archive-list a:hover{color:var(--cinnabar);text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(178,58,42,.5)}
.tag-index{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:14.5px;margin:0 0 6px}
.tag-index a{color:var(--ink-soft);text-decoration:none}
.tag-index a:hover{color:var(--cinnabar)}
.tag-group{margin-top:26px}
.tag-group h3{font-size:14px;color:var(--ink);margin:0 0 6px;font-weight:600}
.tag-items{margin:0;font-size:15px;line-height:2}
.tag-items a{color:var(--ink-soft);text-decoration:none}
.tag-items a:hover{color:var(--cinnabar);text-decoration:underline;text-underline-offset:3px}

/* ===== 页脚 ===== */
.site-foot{padding-top:78px;padding-bottom:54px}
.site-foot p{margin:0;font-size:13px;color:var(--ink-faint);letter-spacing:.02em}
.site-foot .icp{margin-top:6px}
.site-foot a{color:var(--ink-faint);text-decoration:none}
.site-foot a:hover{color:var(--cinnabar);text-decoration:underline;text-underline-offset:3px}

/* ===== 动效（一次安静的入场，不做花哨的逐段动画） ===== */
@keyframes rise{
  from{opacity:0;transform:translateY(6px)}
  to{opacity:1;transform:translateY(0)}
}
.view-enter{animation:rise .45s cubic-bezier(.22,.61,.36,1) .05s both}

/* ===== 小屏 ===== */
@media (max-width:600px){
  .wrap{padding:0 22px}
  .site{padding-top:30px}
  .seal{width:42px;height:42px;font-size:23px;border-radius:4px}
  .brand img.logo{width:42px;height:42px;border-radius:4px}
  .site-name{font-size:18.5px}
  .intro{margin-top:40px;font-size:16.5px}
  .post-list{margin-top:34px}
  .post-list>li{padding:26px 0}
  .post-title{font-size:19.5px}
  .page-title{font-size:22.5px}
  .post-body{font-size:16.5px;line-height:1.9}
  .post-body blockquote{font-size:16.5px;padding-left:18px}
  .post-nav{flex-direction:column;gap:6px}
  .post-nav .next{text-align:left;margin-left:0}
  .site-foot{padding-top:60px;padding-bottom:44px}
}

/* ===== 尊重系统的"减弱动态效果"设置 ===== */
@media (prefers-reduced-motion:reduce){
  .site,.view-enter{animation:none}
}
