@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700;800&family=Poppins:wght@500;600;700;800&display=swap");

:root{
  --hk-blue:#175cff;
  --hk-blue-deep:#0f4ce2;
  --hk-navy:#102346;
  --hk-text:#243651;
  --hk-text-soft:#334866;
  --hk-muted:#72839d;
  --hk-line:#dfe7f3;
  --hk-card:#ffffff;
  --hk-shadow:0 20px 60px rgba(16,35,70,.08);
  --hk-shadow-soft:0 12px 36px rgba(16,35,70,.06);
}

html{
  scroll-behavior:smooth;
}

body,
#home,
#header,
#main,
#mainContent,
#sideBar,
#mainContent .forFlow,
#mainContent #topics,
#mainContent .day,
#mainContent .post,
#mainContent .entrylistItem,
#topics .post,
.postTitle,
.entrylistTitle,
.entrylistPosttitle,
.postCon,
.postBody,
.c_b_p_desc,
.entrylistPostSummary{
  box-sizing:border-box !important;
}

body{
  margin:0;
  color:var(--hk-text);
  background:
    radial-gradient(circle at top left, rgba(23,92,255,.07), transparent 24%),
    radial-gradient(circle at bottom right, rgba(16,35,70,.05), transparent 20%),
    linear-gradient(180deg,#f6f9ff 0%,#f2f6fc 100%) !important;
  font-family:"Poppins","Noto Sans SC","Microsoft YaHei",sans-serif !important;
  -webkit-font-smoothing:antialiased;
}

a{
  color:var(--hk-blue);
  text-decoration:none;
  transition:all .2s ease;
}

a:hover{
  color:var(--hk-blue-deep);
}

img{
  max-width:100%;
  height:auto;
}

#home{
  width:min(1320px,calc(100% - 24px)) !important;
  margin:14px auto 28px !important;
}

#header{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  border-radius:0 !important;
  overflow:visible !important;
}

#blogTitle{
  display:none !important;
}

#navigator{
  margin:0 0 16px !important;
  padding:0 12px !important;
  background:transparent !important;
  border:none !important;
}

#navList{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 !important;
  padding:0 !important;
}

#navList li{
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

#navList a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:38px !important;
  padding:0 16px !important;
  border:1px solid var(--hk-line) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.78) !important;
  color:var(--hk-text) !important;
  font-size:12px !important;
  font-weight:700 !important;
}

#navList a:hover,
#navList .current a{
  border-color:#cfe0ff !important;
  background:#edf4ff !important;
  color:var(--hk-blue) !important;
}

#main{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 288px !important;
  column-gap:18px !important;
  align-items:start !important;
  margin-top:10px !important;
}

#mainContent{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}

#sideBar{
  width:288px !important;
  max-width:288px !important;
  min-width:288px !important;
  margin:0 !important;
  padding:0 !important;
}

#mainContent .forFlow{
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

#mainContent #topics,
#mainContent .day,
#mainContent .post,
#mainContent .entrylistItem,
#topics .post{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 0 18px !important;
  padding:24px 24px 20px !important;
  background:var(--hk-card) !important;
  border:1px solid var(--hk-line) !important;
  border-radius:22px !important;
  box-shadow:var(--hk-shadow-soft) !important;
  overflow:hidden !important;
  float:none !important;
}

.dayTitle{
  margin:0 0 8px !important;
  color:var(--hk-muted) !important;
  font-size:12px !important;
  font-weight:600 !important;
}

.postTitle,
.entrylistTitle,
.entrylistPosttitle,
#cb_post_title_url{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 0 12px !important;
  color:var(--hk-navy) !important;
  font-size:28px !important;
  line-height:1.22 !important;
  letter-spacing:-.03em !important;
  font-weight:800 !important;
  word-break:break-word !important;
  overflow-wrap:anywhere !important;
}

.postTitle a,
.entrylistTitle a,
.entrylistPosttitle a{
  color:var(--hk-navy) !important;
}

.postTitle a:hover,
.entrylistTitle a:hover,
.entrylistPosttitle a:hover,
#cb_post_title_url:hover{
  color:var(--hk-blue) !important;
}

.postDesc,
.entrylistItemPostDesc,
#topics .postDesc,
.entrylistPosttitle + .postDesc{
  margin-top:12px !important;
  color:var(--hk-muted) !important;
  font-size:12px !important;
  line-height:1.8 !important;
}

.c_b_p_desc,
.postCon,
.postBody,
.entrylistPostSummary{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  color:var(--hk-text-soft) !important;
  font-size:15px !important;
  line-height:1.9 !important;
  overflow:hidden !important;
}

.postCon p,
.postBody p,
.entrylistPostSummary p{
  margin:0 0 18px !important;
}

.postCon h2,
.postBody h2{
  margin:34px 0 14px !important;
  padding-left:14px !important;
  border-left:4px solid var(--hk-blue) !important;
  color:var(--hk-navy) !important;
  font-size:24px !important;
  line-height:1.3 !important;
}

.postCon h3,
.postBody h3{
  margin:28px 0 12px !important;
  color:var(--hk-navy) !important;
  font-size:19px !important;
  line-height:1.4 !important;
}

.postCon ul,
.postBody ul,
.postCon ol,
.postBody ol{
  padding-left:24px !important;
}

.postCon li,
.postBody li{
  margin:0 0 10px !important;
}

.postCon blockquote,
.postBody blockquote{
  margin:24px 0 !important;
  padding:18px 20px !important;
  background:linear-gradient(180deg,#f8fbff 0%,#eff5ff 100%) !important;
  border:1px solid #d9e6ff !important;
  border-radius:18px !important;
  color:#466182 !important;
}

pre,
.cnblogs_code,
.postCon pre,
.postBody pre{
  overflow:auto !important;
  padding:18px 20px !important;
  background:#0f234a !important;
  border:1px solid #18315f !important;
  border-radius:18px !important;
  color:#dce8ff !important;
  box-shadow:none !important;
}

code,
.postCon code,
.postBody code{
  padding:2px 7px !important;
  background:#edf4ff !important;
  border-radius:8px !important;
  color:#0f4de0 !important;
  font-family:"Consolas","SFMono-Regular",monospace !important;
}

#green_channel{
  margin:24px 0 0 !important;
  padding:16px 18px !important;
  background:linear-gradient(135deg,rgba(23,92,255,.08),rgba(16,35,70,.04)) !important;
  border:1px solid #dce7ff !important;
  border-radius:18px !important;
}

#green_channel a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:92px !important;
  margin:6px 8px 0 0 !important;
  padding:10px 14px !important;
  border:1px solid #cfe0ff !important;
  border-radius:999px !important;
  background:#fff !important;
  color:var(--hk-blue) !important;
  font-size:13px !important;
  font-weight:700 !important;
}

#green_channel a:hover{
  background:var(--hk-blue) !important;
  border-color:var(--hk-blue) !important;
  color:#fff !important;
}

#sidebar_search,
#blog-news,
#blog-calendar,
#blog_stats,
#profile_block,
#sideBarMain > div,
#sideBarMain > section,
.catListView,
.catListPostArchive,
.catListArticleArchive,
.catListLink,
.catListTag,
.catListBlogRank,
.catListComment,
.catListFeedback{
  margin:0 0 14px !important;
  padding:16px !important;
  background:#fff !important;
  border:1px solid var(--hk-line) !important;
  border-radius:18px !important;
  box-shadow:0 10px 30px rgba(16,35,70,.05) !important;
}

.catListTitle,
.newsItem .catListTitle{
  display:block !important;
  margin:0 0 10px !important;
  padding:0 0 10px !important;
  border-bottom:1px solid var(--hk-line) !important;
  color:var(--hk-navy) !important;
  font-size:13px !important;
  font-weight:800 !important;
}

#sideBar ul{
  margin:0 !important;
  padding-left:0 !important;
  list-style:none !important;
}

#sideBar li{
  margin:0 0 8px !important;
  color:var(--hk-text-soft) !important;
  font-size:12px !important;
  line-height:1.7 !important;
}

#sideBar li a{
  color:var(--hk-text-soft) !important;
}

#sideBar li a:hover{
  color:var(--hk-blue) !important;
}

#profile_block{
  overflow:hidden !important;
  color:var(--hk-muted) !important;
  font-size:12px !important;
  line-height:1.8 !important;
}

#profile_block a,
#sideBarMain a,
#blog-news a,
#sidebar_search a{
  color:#243651 !important;
}

#profile_block a:hover,
#sideBarMain a:hover,
#blog-news a:hover{
  color:#175cff !important;
}

#sidebar_search input[type="text"]{
  width:100% !important;
  height:42px !important;
  padding:0 14px !important;
  border:1px solid #d5e2f5 !important;
  border-radius:14px !important;
  background:#f8fbff !important;
  color:var(--hk-text) !important;
  outline:none !important;
}

#sidebar_search input[type="submit"],
#sidebar_search button{
  margin-top:10px !important;
  height:40px !important;
  padding:0 16px !important;
  border:none !important;
  border-radius:12px !important;
  background:var(--hk-blue) !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:700 !important;
  cursor:pointer !important;
}

#blog-calendar table{
  width:100% !important;
}

#blog-calendar td,
#blog-calendar th{
  color:var(--hk-text-soft) !important;
  font-size:12px !important;
}

.feedbackItem{
  margin:0 0 16px !important;
  padding:18px 20px !important;
  background:#fff !important;
  border:1px solid var(--hk-line) !important;
  border-radius:18px !important;
  box-shadow:var(--hk-shadow-soft) !important;
}

.commentbox_title,
.feedback_area_title{
  color:var(--hk-navy) !important;
  font-size:22px !important;
  font-weight:800 !important;
}

#tbCommentBody,
#comment_form_container textarea{
  width:100% !important;
  min-height:180px !important;
  padding:16px 18px !important;
  border:1px solid #d5e2f5 !important;
  border-radius:18px !important;
  background:#fff !important;
  color:var(--hk-text) !important;
}

#btn_comment_submit,
.comment_btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:0 20px !important;
  border:none !important;
  border-radius:14px !important;
  background:var(--hk-blue) !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:700 !important;
  cursor:pointer !important;
}

/* 资料卡下方按钮横排 + 修复白字 */
#profile_block + div,
#profile_block ~ div[id^="p_b_"],
#profile_block ~ div{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:10px !important;
}

#p_b_follow a,
#p_b_contact a,
#p_b_message a,
#p_b_home a,
a[id^="p_b_"],
#profile_block ~ div a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:110px !important;
  height:40px !important;
  padding:0 16px !important;
  border-radius:999px !important;
  border:1px solid #d6e2f5 !important;
  background:#ffffff !important;
  color:#243651 !important;
  font-size:13px !important;
  font-weight:700 !important;
  text-decoration:none !important;
  box-shadow:0 8px 20px rgba(16,35,70,.06) !important;
}

#p_b_follow a:hover,
#p_b_contact a:hover,
#p_b_message a:hover,
#p_b_home a:hover,
a[id^="p_b_"]:hover,
#profile_block ~ div a:hover{
  border-color:#cfe0ff !important;
  background:#edf4ff !important;
  color:#175cff !important;
}

#footer{
  margin-top:18px !important;
  padding:0 !important;
  background:transparent !important;
  border:none !important;
  color:var(--hk-muted) !important;
}

@media (max-width: 1140px){
  #main{
    display:block !important;
  }

  #sideBar{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-top:18px !important;
  }
}

@media (max-width: 768px){
  #home{
    width:calc(100% - 16px) !important;
    margin:10px auto 20px !important;
  }

  #navigator{
    padding:0 6px !important;
  }

  #mainContent #topics,
  #mainContent .day,
  #mainContent .post,
  #mainContent .entrylistItem,
  #topics .post{
    padding:18px 16px !important;
    border-radius:18px !important;
  }

  .postTitle,
  .entrylistTitle,
  .entrylistPosttitle,
  #cb_post_title_url{
    font-size:22px !important;
  }

  .postCon h2,
  .postBody h2{
    font-size:20px !important;
  }

  #profile_block + div,
  #profile_block ~ div{
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
  }
}