/* cnblogs calm cream theme v1 for https://www.cnblogs.com/cdz-111 */
:root {
  --bg: #f7f4ee;
  --bg-soft: #fcfaf6;
  --card: rgba(255,255,255,0.82);
  --card-strong: rgba(255,255,255,0.92);
  --line: #e8dfd1;
  --text: #5f5a52;
  --text-2: #8a8378;
  --title: #4f6b57;
  --accent: #93b29a;
  --accent-2: #d7e6d5;
  --shadow: 0 10px 30px rgba(127, 115, 92, 0.08);
  --shadow-hover: 0 14px 34px rgba(127, 115, 92, 0.12);
  --radius-xl: 24px;
  --radius-lg: 18px;
  --radius-md: 14px;
}

html { scroll-behavior: smooth; }
body {
  background:
    radial-gradient(circle at top left, rgba(214,229,214,.72), transparent 28%),
    radial-gradient(circle at top right, rgba(240,227,210,.82), transparent 26%),
    linear-gradient(180deg, #f8f5ef 0%, #f6f1e8 48%, #f5efe4 100%);
  color: var(--text);
  font-family: "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
}

/* 顶部导航弱化 */
#top_nav { box-shadow: 0 6px 24px rgba(122, 111, 89, .06); backdrop-filter: blur(8px); }
#nav_main { max-width: 1240px; margin: 0 auto; }

/* 主体 */
#home {
  width: min(1180px, calc(100% - 40px));
  margin: 42px auto;
  padding: 0;
  background: transparent;
}
#main { display: flex; gap: 28px; }
#mainContent { flex: 1; min-width: 0; }
#sideBar { width: 300px; }

/* Banner 区 */
#header {
  background: linear-gradient(135deg, rgba(255,255,255,.76), rgba(255,250,243,.92));
  border: 1px solid rgba(232,223,209,.75);
  box-shadow: var(--shadow);
  border-radius: 30px;
  padding: 34px 36px 26px;
  margin-bottom: 26px;
  position: relative;
  overflow: hidden;
}
#header::before,
#header::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  filter: blur(3px);
}
#header::before {
  width: 220px; height: 220px;
  right: -60px; top: -80px;
  background: rgba(214,230,214,.45);
}
#header::after {
  width: 180px; height: 180px;
  left: -40px; bottom: -90px;
  background: rgba(238,227,210,.45);
}
#blogTitle { padding: 0; min-height: 146px; position: relative; z-index: 1; }
#lnkBlogLogo, #blogLogo { display: none !important; }
#blogTitle h1 { margin: 0; }
#blogTitle h1 a {
  font-size: 40px;
  line-height: 1.2;
  font-weight: 700;
  color: var(--title) !important;
  letter-spacing: 1px;
}
#blogTitle h2 {
  display: block !important;
  margin: 14px 0 0;
  font-size: 15px;
  line-height: 1.9;
  max-width: 680px;
  color: var(--text-2);
}
#blogTitle h2::before {
  content: "把日子过慢一点，把技术学笨一点，也没关系。";
}
#navigator {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px dashed rgba(147,178,154,.65);
  position: relative;
  z-index: 1;
}
#navList {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 0;
  margin: 0;
}
#navList li { margin: 0; }
#navList a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  padding: 0 16px;
  border-radius: 999px;
  background: rgba(255,255,255,.7);
  border: 1px solid rgba(223,214,200,.75);
  color: var(--text) !important;
  transition: all .25s ease;
}
#navList a:hover {
  color: var(--title) !important;
  background: #fff;
  transform: translateY(-2px);
  box-shadow: 0 8px 22px rgba(123,110,87,.08);
}
.blogStats {
  margin-top: 14px;
  color: var(--text-2);
  font-size: 13px;
}

/* 首页自定义简介卡 */
#home_top_info {
  display: grid;
  grid-template-columns: 84px 1fr;
  gap: 18px;
  align-items: center;
  padding: 24px;
  margin-bottom: 26px;
  background: linear-gradient(135deg, rgba(255,255,255,.88), rgba(250,247,241,.96));
  border: 1px solid rgba(232,223,209,.78);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow);
}
#home_top_info .avatar {
  width: 84px; height: 84px; border-radius: 50%;
  background: linear-gradient(135deg, #dfeadf, #f4ead9);
  display: flex; align-items: center; justify-content: center;
  color: #6f8b77; font-size: 30px; font-weight: 700;
}
#home_top_info h3 {
  margin: 0 0 8px;
  font-size: 22px;
  color: var(--title);
}
#home_top_info p {
  margin: 0;
  line-height: 1.9;
  color: var(--text);
}
#home_top_info .meta {
  margin-top: 12px; display: flex; flex-wrap: wrap; gap: 10px;
}
#home_top_info .meta span {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 7px 12px; border-radius: 999px;
  background: rgba(147,178,154,.12);
  color: #6b7f70; font-size: 13px;
}

/* 首页文章列表 */
.forFlow > div[class*="post"],
.day,
.entrylist {
  background: var(--card);
  border: 1px solid rgba(232,223,209,.72);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow);
  padding: 26px 28px;
  margin-bottom: 22px;
  transition: transform .25s ease, box-shadow .25s ease;
}
.forFlow > div[class*="post"]:hover,
.day:hover,
.entrylist:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-hover);
}
.postTitle,
.entrylistPosttitle,
.entrylistTitle,
.dayTitle a {
  color: var(--title) !important;
}
.postTitle a,
.entrylistPosttitle a,
.entrylistTitle a {
  color: var(--title) !important;
  font-size: 28px;
  line-height: 1.45;
  font-weight: 700;
}
.postCon,
.entrylistPostSummary,
.c_b_p_desc,
.postDesc,
.entrylistItemPostDesc {
  color: var(--text) !important;
  line-height: 1.95;
  font-size: 15px;
}
.postDesc,
.entrylistItemPostDesc,
.postMeta {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px dashed rgba(147,178,154,.45);
  color: var(--text-2) !important;
}
.morelink,
.c_b_p_desc_readmore {
  display: inline-flex;
  margin-top: 16px;
  padding: 9px 16px;
  border-radius: 999px;
  background: #f5fbf4;
  color: #6c8a72 !important;
  border: 1px solid rgba(147,178,154,.35);
}
.morelink:hover,
.c_b_p_desc_readmore:hover {
  background: #edf7eb;
}

/* 侧边栏 */
#sideBarMain > div,
#leftcontentcontainer > div,
#blog-news {
  background: var(--card-strong);
  border: 1px solid rgba(232,223,209,.78);
  border-radius: 20px;
  box-shadow: var(--shadow);
  padding: 18px 18px 14px;
  margin-bottom: 18px;
}
#sideBar h3,
#sideBar .catListTitle {
  margin: 0 0 14px;
  font-size: 16px;
  color: var(--title);
  padding-left: 10px;
  border-left: 4px solid rgba(147,178,154,.8);
}
#sideBar ul { padding-left: 18px; }
#sideBar li {
  margin: 8px 0;
  color: var(--text-2);
  line-height: 1.8;
}
#sideBar a { color: var(--text) !important; }
#sideBar a:hover { color: var(--title) !important; }
#sidebar_news_container {
  color: var(--text);
  line-height: 1.85;
}
#sidebar_news_container .mood-card {
  display: block;
  padding: 14px 14px 12px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(147,178,154,.11), rgba(244,234,217,.38));
  border: 1px dashed rgba(147,178,154,.45);
}
#sidebar_news_container .mood-small {
  margin-top: 10px;
  color: var(--text-2);
  font-size: 13px;
}

/* 文章页排版优化 */
#cnblogs_post_body,
.blogpost-body,
.postBody {
  color: #5b5750;
  font-size: 16px;
  line-height: 2;
}
#cnblogs_post_body h1,
#cnblogs_post_body h2,
#cnblogs_post_body h3,
.postBody h1,
.postBody h2,
.postBody h3 {
  color: var(--title);
  line-height: 1.45;
  margin-top: 1.8em;
  margin-bottom: .8em;
}
#cnblogs_post_body h2,
.postBody h2 {
  padding-left: 12px;
  border-left: 4px solid rgba(147,178,154,.82);
}
#cnblogs_post_body blockquote,
.postBody blockquote {
  margin: 18px 0;
  padding: 14px 18px;
  border-left: 4px solid rgba(147,178,154,.9);
  background: rgba(255,251,245,.9);
  border-radius: 0 14px 14px 0;
  color: #6f695f;
}
#cnblogs_post_body img,
.postBody img {
  border-radius: 16px;
  box-shadow: 0 10px 24px rgba(125,115,95,.10);
}
#cnblogs_post_body table,
.postBody table {
  border-collapse: collapse;
  width: 100%;
  overflow: hidden;
  border-radius: 14px;
}
#cnblogs_post_body table th,
#cnblogs_post_body table td,
.postBody table th,
.postBody table td {
  border: 1px solid #eadfce;
  padding: 10px 12px;
}
#cnblogs_post_body code,
.postBody code {
  background: #f5efe7;
  color: #6c6356;
  padding: 2px 7px;
  border-radius: 8px;
}
#cnblogs_post_body pre,
.postBody pre {
  border-radius: 16px !important;
  box-shadow: var(--shadow);
}

/* footer */
#footer {
  margin-top: 30px;
  padding: 24px 0 40px;
  text-align: center;
  color: var(--text-2);
}
#footer a { color: var(--text-2); }

/* 回到顶部 */
#back_to_top {
  border-radius: 999px !important;
  background: rgba(255,255,255,.9) !important;
  box-shadow: var(--shadow) !important;
}

/* 响应式 */
@media (max-width: 1080px) {
  #main { flex-direction: column; }
  #sideBar { width: auto; }
}
@media (max-width: 767px) {
  #home { width: calc(100% - 20px); margin: 20px auto; }
  #header { padding: 24px 18px 20px; border-radius: 24px; }
  #blogTitle h1 a { font-size: 30px; }
  #home_top_info { grid-template-columns: 1fr; text-align: left; }
  #home_top_info .avatar { width: 68px; height: 68px; font-size: 24px; }
  .forFlow > div[class*="post"], .day, .entrylist { padding: 20px 18px; }
  #navList a { height: 36px; padding: 0 14px; }
}

/* ===== 文章页增强：佛系轻动效版（追加到现有 CSS 最后） ===== */

/* 只在文章页生效 */
body.article-enhanced #topics,
body.article-enhanced #topicList,
body.article-enhanced .forFlow {
  animation: articlePageFadeIn .55s ease both;
}

body.article-enhanced .post {
  background: rgba(255,255,255,.80);
  border: 1px solid rgba(232,223,209,.76);
  border-radius: 26px;
  box-shadow: 0 12px 34px rgba(127,115,92,.08);
  padding: 30px 34px;
  transition: box-shadow .28s ease, transform .28s ease;
}

body.article-enhanced .post:hover {
  box-shadow: 0 16px 38px rgba(127,115,92,.12);
  transform: translateY(-2px);
}

/* 标题区 */
body.article-enhanced .postTitle,
body.article-enhanced .postTitle a {
  color: var(--title) !important;
  font-size: 34px !important;
  line-height: 1.35;
  font-weight: 700;
  letter-spacing: .3px;
}

body.article-enhanced .postDesc {
  margin-top: 16px;
  padding: 12px 16px;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(147,178,154,.10), rgba(244,234,217,.30));
  border: 1px dashed rgba(147,178,154,.38);
  color: var(--text-2) !important;
}

/* 正文排版 */
body.article-enhanced #cnblogs_post_body,
body.article-enhanced .blogpost-body,
body.article-enhanced .postBody {
  color: #5c574f;
  font-size: 17px;
  line-height: 2.05;
  letter-spacing: .1px;
}

body.article-enhanced #cnblogs_post_body p,
body.article-enhanced .postBody p {
  margin: 1.05em 0;
}

body.article-enhanced #cnblogs_post_body h1,
body.article-enhanced #cnblogs_post_body h2,
body.article-enhanced #cnblogs_post_body h3,
body.article-enhanced #cnblogs_post_body h4,
body.article-enhanced .postBody h1,
body.article-enhanced .postBody h2,
body.article-enhanced .postBody h3,
body.article-enhanced .postBody h4 {
  color: var(--title);
  line-height: 1.45;
  margin-top: 1.9em;
  margin-bottom: .8em;
  position: relative;
}

body.article-enhanced #cnblogs_post_body h2,
body.article-enhanced .postBody h2 {
  padding-left: 14px;
  border-left: 4px solid rgba(147,178,154,.82);
}

body.article-enhanced #cnblogs_post_body h3,
body.article-enhanced .postBody h3 {
  padding-left: 2px;
}

body.article-enhanced #cnblogs_post_body ul,
body.article-enhanced #cnblogs_post_body ol,
body.article-enhanced .postBody ul,
body.article-enhanced .postBody ol {
  padding-left: 1.4em;
}

body.article-enhanced #cnblogs_post_body li,
body.article-enhanced .postBody li {
  margin: .45em 0;
}

/* 引用块 */
body.article-enhanced #cnblogs_post_body blockquote,
body.article-enhanced .postBody blockquote {
  margin: 20px 0;
  padding: 16px 18px;
  border-left: 4px solid rgba(147,178,154,.9);
  background: linear-gradient(135deg, rgba(255,252,246,.95), rgba(247,243,236,.95));
  border-radius: 0 16px 16px 0;
  color: #6f695f;
  box-shadow: 0 8px 24px rgba(127,115,92,.05);
}

/* 行内代码 & 代码块 */
body.article-enhanced #cnblogs_post_body code,
body.article-enhanced .postBody code {
  background: #f4eee6;
  color: #6a6256;
  padding: 3px 8px;
  border-radius: 8px;
  font-size: .92em;
}

body.article-enhanced #cnblogs_post_body pre,
body.article-enhanced .postBody pre,
body.article-enhanced .cnblogs_code {
  border-radius: 18px !important;
  box-shadow: 0 12px 28px rgba(99,92,80,.10);
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease;
}

body.article-enhanced #cnblogs_post_body pre:hover,
body.article-enhanced .postBody pre:hover,
body.article-enhanced .cnblogs_code:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 32px rgba(99,92,80,.14);
}

/* 图片 */
body.article-enhanced #cnblogs_post_body img,
body.article-enhanced .postBody img {
  border-radius: 18px;
  box-shadow: 0 12px 28px rgba(125,115,95,.10);
  transition: transform .28s ease, box-shadow .28s ease;
}

body.article-enhanced #cnblogs_post_body img:hover,
body.article-enhanced .postBody img:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 34px rgba(125,115,95,.15);
}

/* 表格 */
body.article-enhanced #cnblogs_post_body table,
body.article-enhanced .postBody table {
  width: 100%;
  border-collapse: collapse;
  margin: 20px 0;
  overflow: hidden;
  border-radius: 16px;
  box-shadow: 0 8px 24px rgba(127,115,92,.06);
}

body.article-enhanced #cnblogs_post_body th,
body.article-enhanced #cnblogs_post_body td,
body.article-enhanced .postBody th,
body.article-enhanced .postBody td {
  border: 1px solid #eadfce;
  padding: 11px 13px;
}

body.article-enhanced #cnblogs_post_body th,
body.article-enhanced .postBody th {
  background: #f8f2e8;
  color: #6a645a;
}

/* 分割线 */
body.article-enhanced #cnblogs_post_body hr,
body.article-enhanced .postBody hr {
  border: none;
  border-top: 1px dashed rgba(147,178,154,.55);
  margin: 30px 0;
}

/* 链接 */
body.article-enhanced #cnblogs_post_body a,
body.article-enhanced .postBody a {
  color: #6f8e77;
  text-decoration: none;
  background-image: linear-gradient(rgba(147,178,154,.25), rgba(147,178,154,.25));
  background-repeat: no-repeat;
  background-size: 100% 0.38em;
  background-position: 0 90%;
  transition: color .2s ease, background-size .25s ease;
}

body.article-enhanced #cnblogs_post_body a:hover,
body.article-enhanced .postBody a:hover {
  color: #55705f;
  background-size: 100% 0.9em;
}

/* 推荐/信息区 */
body.article-enhanced #div_digg {
  margin-top: 28px;
  padding: 20px 16px;
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(255,255,255,.85), rgba(248,243,235,.96));
  border: 1px solid rgba(232,223,209,.75);
  box-shadow: 0 8px 24px rgba(127,115,92,.06);
}

body.article-enhanced #blog_post_info_block {
  margin-top: 24px;
  padding: 18px 20px;
  border-radius: 18px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(232,223,209,.7);
}

/* 阅读进度条 */
#reading-progress {
  position: fixed;
  top: 0;
  left: 0;
  width: 0;
  height: 4px;
  z-index: 9999;
  background: linear-gradient(90deg, #b7cfba 0%, #d6e8d7 55%, #f2dfbf 100%);
  box-shadow: 0 2px 8px rgba(147,178,154,.35);
  transition: width .12s linear, opacity .25s ease;
}

/* 返回顶部按钮更柔和 */
#back_to_top,
#toTop {
  border-radius: 999px !important;
  box-shadow: 0 10px 24px rgba(127,115,92,.12) !important;
  transition: transform .25s ease, box-shadow .25s ease !important;
}

#back_to_top:hover,
#toTop:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(127,115,92,.18) !important;
}

@keyframes articlePageFadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 767px) {
  body.article-enhanced .post {
    padding: 22px 18px;
    border-radius: 22px;
  }

  body.article-enhanced .postTitle,
  body.article-enhanced .postTitle a {
    font-size: 28px !important;
  }

  body.article-enhanced #cnblogs_post_body,
  body.article-enhanced .postBody {
    font-size: 16px;
    line-height: 1.95;
  }
}


/* ===== 把首页介绍卡里的“躺”字替换成图片头像 ===== */
#home_top_info .avatar{
  width: 92px;
  height: 92px;
  border-radius: 50%;
  overflow: hidden;
  background: #fff url("https://blogs.qlfy.top/2026/08/7e279584856e51b3bdfd52e66127a4ca.jpg") center center / cover no-repeat !important;
  border: 3px solid rgba(255,255,255,.78);
  box-shadow: 0 12px 30px rgba(120, 112, 94, 0.16);
  color: transparent !important;
  font-size: 0 !important;
  text-indent: -9999px;
  transition: transform .28s ease, box-shadow .28s ease;
}

#home_top_info .avatar:hover{
  transform: translateY(-2px) scale(1.03);
  box-shadow: 0 16px 34px rgba(120, 112, 94, 0.22);
}