/* Keep the original k1649 stylesheet; these rules handle content and controls. */
.health-k1649 { letter-spacing: 0; }
.health-k1649 button { cursor: pointer; font: inherit; }
.health-k1649 button:focus-visible, .health-k1649 a:focus-visible, .health-k1649 input:focus-visible { outline: 2px solid #c94524; outline-offset: 3px; }
.health-k1649 [hidden] { display: none !important; }
.skip-link { position: fixed; left: 16px; top: -80px; z-index: 20; padding: 8px 16px; color: #fff; background: #006abe; }
.skip-link:focus { top: 12px; }
#header #logo { width: 300px; vertical-align: middle; margin: 0; }
#logo .site-name { display: block; color: #006abe; font-size: 28px; font-weight: bold; line-height: 1.4; overflow-wrap: anywhere; }
#topBtn button { padding: 0; border: 0; background: transparent; }
#topBtn .btn { min-height: 24px; }
#search .submit { border: 0; border-radius: 0; padding: 0; }
#search input.text { box-sizing: content-box; border: 0; border-radius: 0; }
#navClose { display: none; }
#slides { position: relative; }
.health-k1649 .slick-load { display: block; }
#slides .slick-load:not(.slick-initialized) > .item:not(:first-child) { display: none; }
#slides .item img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
#slides .item h2 { box-sizing: border-box; width: 100%; background: rgba(0,0,0,.55); }
#slides .slick-load { position: relative; }
#slides .carousel-pause { position: absolute; top: 8px; right: 38px; width: 32px; height: 32px; padding: 0; border: 0; color: #fff; background: rgba(0,0,0,.6); z-index: 4; }
.carousel .slick-load:not(.slick-initialized) { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 20px; width: 100%; }
.carousel .slick-load:not(.slick-initialized) .info { margin-right: 0; }
.carousel .slick-load > .empty-state { grid-column: 1 / -1; }
.gallery li.empty-state, .picture li.empty-state { float: none; width: auto; padding: 20px 0; }
.column li.empty-state { border-top: 0; padding: 20px 0; margin: 0; }
.empty-state { padding: 20px 0; color: #666; font-size: 14px; line-height: 1.8; }
.page-intro { color: #666; font-size: 14px; line-height: 1.8; margin: 0 0 20px; }
#breadcrumb { margin-bottom: 6px; font-size: 12px; line-height: 1.8; float: none; }
#breadcrumb ol { display: flex; flex-wrap: wrap; gap: 0 6px; margin: 0; padding: 0; }
#breadcrumb li { list-style: none; overflow-wrap: anywhere; }
#breadcrumb li + li::before { content: "/"; color: #888; margin-right: 6px; }
#breadcrumb span { position: static; display: inline; font-size: inherit; font-weight: normal; line-height: inherit; color: #666; }
.blogItem .title { white-space: normal; overflow-wrap: anywhere; }
#postTitle { overflow-wrap: anywhere; }
#postmeta span { padding-left: 0; line-height: 1.8; }
#postmeta .date, #postmeta .tag { background: none; }
.article-body a { text-decoration: underline; overflow-wrap: anywhere; }
.article-summary { color: #666; font-size: 14px; line-height: 1.8; padding-bottom: 16px; }
.article-topics { color: #666; font-size: 13px; line-height: 1.8; padding-bottom: 16px; }
.article-topics a { color: #006abe; margin-right: 4px; }
.article-cover { margin: 0 0 20px; text-align: center; }
.article-cover img { display: block; width: 100%; height: auto; max-height: 520px; object-fit: cover; }
.article-cover figcaption { margin-top: 6px; color: #888; font-size: 12px; line-height: 1.6; }
#postnavi a { overflow-wrap: anywhere; }
#related h3 { font-size: 14px; font-weight: normal; line-height: 1.6; overflow-wrap: anywhere; }
#mzaback { padding: 0; height: 50px; border: 0; }
#mzaback.is-visible { display: block; }
#footer #copyright { margin-right: 0; }
#footer #copyright a { margin-left: 12px; }
.ad-slot { position: relative; clear: both; }
.ad-slot img { max-width: 100%; height: auto; }
.ad-disclosure { display: block; color: #888; font-size: 11px; line-height: 1.5; text-align: left; }
@media (max-width: 1024px) {
  #header #logo { width: calc(100% - 90px); }
  #logo .site-name { font-size: 24px; }
  #navClose { display: block; position: absolute; top: 12px; right: 12px; width: 32px; height: 32px; border: 0; background: transparent; color: #fff; font-size: 18px; }
  .js #nav.is-open { display: block; }
  .js #nav.is-open .inner { left: 0; }
  .js #search.is-open { display: block; }
  html:not(.js) #nav { display: block; position: static; height: auto; margin: 0; background: transparent; cursor: default; }
  html:not(.js) #nav .inner { position: static; width: 93.75%; height: auto; box-shadow: none; }
  html:not(.js) #nav ul { display: flex; flex-wrap: wrap; padding: 0; }
  html:not(.js) #nav li { width: 33.333%; text-align: center; }
  html:not(.js) #nav li a { padding: 0 5px; }
  html:not(.js) #navClose, html:not(.js) #topBtn { display: none; }
  html:not(.js) #search { display: block; position: static; clear: both; width: 100%; margin: 0; padding-top: 12px; transform: none; background: transparent; }
  html:not(.js) #header #logo { width: 100%; }
  #wrapper > .table { display: flex; flex-direction: column; }
  #wrapper > .table > #main { order: 0; min-width: 0; }
  #wrapper > .table > #sidebar { order: 1; width: auto; }
}
@media (max-width: 768px) {
  #logo .site-name { font-size: 22px; }
  .carousel .slick-load:not(.slick-initialized) { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
  #slides .carousel-pause { right: 8px; }
  #search.is-open { padding: 5px 0; }
  #mzaback { width: 40px; height: 40px; }
  #postnavi .prev, #postnavi .next { white-space: normal; }
  .js #nav .sub-toggle { width: 40px; height: 40px; }
}
/* Nested column menus: child links stay in the HTML; CSS only decides
   whether they are shown, so crawlers and no-JS visitors lose nothing. */
#nav .sub-toggle { display: none; }
@media (min-width: 1025px) {
  #nav li.hasSub:hover > ul, #nav li.hasSub:focus-within > ul { display: block; }
}
@media (max-width: 1024px) {
  .js #nav .sub-toggle { display: block; position: absolute; top: 0; right: 0; width: 50px; height: 50px; padding: 0; border: 0; background: transparent; }
  .js #nav .sub-toggle::after { content: ''; position: absolute; left: 50%; top: 50%; width: 6px; height: 6px; margin: -4px 0 0 -4px; border-right: 1px solid #fff; border-bottom: 1px solid #fff; transform: rotate(-45deg); transition: transform .3s; }
  .js #nav li.is-open > .sub-toggle::after { transform: rotate(45deg); margin-top: -1px; }
  .js #nav li.is-open > ul { display: block; }
  html:not(.js) #nav li ul { display: block; position: static; width: auto; box-shadow: none; padding: 0; }
}
.widget_categories ul.sub-columns { margin: 0; padding: 0; }
.widget_categories li li a { padding-left: 1.2em; }
/* Home block heading: child column links.  They are always present in the
   server-rendered HTML (child columns get no homepage block of their own),
   so CSS only lays them out and never decides whether they exist. */
.boxTitle .sub-columns { position: static; display: flex; flex-wrap: wrap; gap: 2px 12px; margin-top: 4px; overflow: visible; }
.boxTitle .sub-columns a { color: #666; font-size: 13px; font-weight: normal; line-height: 1.6; padding-right: 0; }
.boxTitle .sub-columns a:after { content: none; display: none; }
.boxTitle .sub-columns a:hover { color: #006abe; }
@media (max-width: 768px) {
  .boxTitle .sub-columns { display: none; }
}

/* Footer: compliance links above the copyright line. */
#footer-links { margin-bottom: 6px; font-size: 14px; line-height: 24px; }
#footer-links a { display: inline-block; margin-right: 14px; color: #666; }
#footer-links a:hover { color: #006abe; }
#copyright .icp, #copyright .police { margin-left: 8px; }
@media (max-width: 768px) {
  #footer-links { font-size: 13px; }
  #footer-links a { margin-right: 10px; }
}

/* Single-page helpers used by the about and disclaimer templates. */
.entry .about-columns { display: flex; flex-wrap: wrap; gap: 8px 14px; margin: 0 0 1em; padding: 0; list-style: none; }
.entry .contact-list { margin: 0 0 1em; padding: 0; list-style: none; line-height: 1.9em; }
/* YMYL 合规说明：风险提示 + 作者资质 + 资料来源，服务端渲染，无 JS 也在 */
.ymyl-notice{margin:18px 0 0;padding:14px 16px;border:1px solid #d9e2ec;border-left:4px solid #2f6fb0;border-radius:4px;background:#f6f9fc;color:#2c3a47;font-size:14px;line-height:1.75}
.ymyl-notice h2{margin:0 0 8px;font-size:15px;font-weight:600;color:#1f3d5c}
.ymyl-notice p{margin:0 0 6px}
.ymyl-notice p:last-child{margin-bottom:0}
.ymyl-notice b{color:#1f3d5c;font-weight:600}

.ymyl-notice .ymyl-scope { margin: 0 0 10px; padding: 8px 12px; background: #fdf6e6; border-left: 3px solid #c98f2a; }
.author-articles { list-style: none; margin: 0; padding: 0; }
.author-articles li { display: flex; justify-content: space-between; gap: 16px; padding: 9px 0; border-bottom: 1px dashed #e6e6e6; }
.author-articles li a { flex: 1 1 auto; }
.author-articles-sort { flex: 0 0 auto; color: #8a8a8a; font-size: 13px; }
@media (prefers-reduced-motion: reduce) {
  .health-k1649 *, .health-k1649 *::before, .health-k1649 *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

/* ============================================================
   配色主题层（2026-10-06 上线，四套可选，默认 a）
   <html data-scheme="a|b|c|d">：a 清水蓝 / b 暖纸杂志 / c 高对照 / d 薄荷卡片。
   属性由 info_head.html 服务端给默认值（无 JS 也有完整主题），头部内联脚本
   在首帧前恢复用户选择，k1649.js 在顶栏右侧构建切换器并存 localStorage。
   颜色/字体/圆角/阴影全部走下面的设计令牌，纯 CSS，不动 HTML/SEO 结构。
   ============================================================ */

/* 顶栏切换器（k1649.js 生成）：与同排的 #welcome/#pagelist 完全一致的
   字号/行高/内边距，浮动盒高度相同才能在顶栏垂直居中。 */
.theme-switch{box-sizing:border-box;float:right;margin-left:16px;height:38px;padding:5px 0;font-size:14px;line-height:28px;color:rgba(255,255,255,.85)}
.theme-switch label{margin-right:6px;cursor:pointer}
.theme-switch select{height:22px;padding:0 2px;border:1px solid rgba(255,255,255,.4);border-radius:4px;background:rgba(255,255,255,.12);color:#fff;font:inherit;vertical-align:middle;cursor:pointer}
.theme-switch select option{color:#222;background:#fff}
/* #topbar .inner 是 overflow:hidden 的 BFC，outline 会被裁掉，改用 box-shadow 画焦点环 */
.theme-switch :focus{outline:none;box-shadow:0 0 0 2px rgba(255,255,255,.7)}
@media (max-width:768px){.theme-switch{display:none}}

/* ---------- 公共结构层：所有主题共享 ---------- */
html[data-scheme]{
  --font-body:"PingFang SC","Microsoft YaHei","HarmonyOS Sans SC",system-ui,sans-serif;
  --font-display:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  --fs-base:16px; --fs-entry:17px;
  --radius:10px; --radius-sm:6px;
  --shadow:0 1px 2px rgba(15,40,70,.05);
  --card-border:1px solid var(--line,#e2eaf2);
  --line:#e2eaf2; --tint:#edf4fa; --paper:#fff; --bg:#f4f8fb;
  --ink:#243240; --muted:#64748b; --accent:#0b72b9; --nav-bg:#0d6ab8;
  --header-bg:#fff; --footer-bg:#0e4a78;
}
html[data-scheme] body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-base);word-break:normal;overflow-wrap:break-word}
html[data-scheme] a:hover{color:var(--accent)}

/* 顶栏与头部 */
html[data-scheme] #topbar{background:var(--nav-bg)}
html[data-scheme] #top:before{background-image:none;background-color:var(--header-bg)}
html[data-scheme] #header{padding:22px 0}
html[data-scheme] #logo .site-name{color:var(--accent);font-family:var(--font-display);letter-spacing:.02em}

/* 搜索框：胶囊化 */
html[data-scheme] #search .input{border-color:var(--accent);border-radius:var(--radius-sm) 0 0 var(--radius-sm)}
html[data-scheme] #search .submit{background-color:var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0}

/* 导航条：圆角；栏目多（17 个），保持模板原生等宽换行布局，勿改自适应等分 */
html[data-scheme] #nav .inner{background:var(--nav-bg);border-radius:var(--radius)}
html[data-scheme] #nav li a{border-radius:var(--radius-sm)}
html[data-scheme] #nav li a:hover{background:rgba(255,255,255,.14)}
html[data-scheme] #nav li ul{background:var(--nav-bg)}

/* 卡片化容器 */
html[data-scheme] .box{background:var(--paper);border:var(--card-border);box-shadow:var(--shadow);border-radius:var(--radius);padding:20px}

/* 区块标题 */
html[data-scheme] .boxTitle{padding-bottom:10px;margin-bottom:14px}
html[data-scheme] .boxTitle:after{background:var(--accent);height:3px;border-radius:2px}
html[data-scheme] .boxTitle .name{font-size:18px;font-weight:700;color:var(--ink);font-family:var(--font-display)}
html[data-scheme] .boxTitle i{color:var(--accent)}
html[data-scheme] .boxTitle span a{color:var(--muted)}
html[data-scheme] .dot:before{background:var(--accent)}

/* 正文与文章页 */
html[data-scheme] #postTitle{text-align:left;font-size:26px;line-height:1.45;font-weight:700;font-family:var(--font-display);padding:8px 0 10px}
html[data-scheme] #postmeta{text-align:left;padding-bottom:14px;border-bottom:1px solid var(--line)}
html[data-scheme] #postmeta span,html[data-scheme] #postmeta a{color:var(--muted)}
html[data-scheme] .article-summary,html[data-scheme] .article-topics{color:var(--muted)}
html[data-scheme] .article-topics a{color:var(--accent)}
html[data-scheme] .entry{font-size:var(--fs-entry);line-height:1.95}
html[data-scheme] .entry *{line-height:1.95}
html[data-scheme] .entry a{color:var(--accent)}
html[data-scheme] .entry h2,html[data-scheme] .entry h3{font-family:var(--font-display);line-height:1.5}

/* 列表卡片 */
html[data-scheme] .blogItem{border-bottom:1px solid var(--line)}
html[data-scheme] .blogItem .title{font-size:19px;font-weight:700}
html[data-scheme] .blogItem .title a{color:var(--ink)}
html[data-scheme] .blogItem .meta,html[data-scheme] .blogItem .intro{color:var(--muted)}
html[data-scheme] .blogItem .more a{background:var(--accent);border-radius:var(--radius-sm)}
html[data-scheme] .thumbnail img:hover{transform:scale(1.04)}

/* 侧栏与列表小组件 */
html[data-scheme] .widget_categories li a,html[data-scheme] .widget_archive li a,html[data-scheme] .widget_links li a,html[data-scheme] .wp-block-page-list li a{background:var(--tint);color:var(--ink);border-radius:var(--radius-sm)}
html[data-scheme] .widget_tag_cloud a{background:var(--tint);color:var(--ink)}
html[data-scheme] .widget_tag_cloud a:hover{background:var(--accent);color:#fff}
html[data-scheme] #latest li time,html[data-scheme] .column time,html[data-scheme] .column .first p,html[data-scheme] .news .item p,html[data-scheme] .news .item time{color:var(--muted)}

/* 分页 / 回到顶部 / 焦点 */
html[data-scheme] #pagenavi .current,html[data-scheme] #pagenavi a:hover{background:var(--accent)}
html[data-scheme] #pagenavi a,html[data-scheme] #pagenavi .current{border-radius:var(--radius-sm)}
html[data-scheme] .pagination a.page-num-current{background:var(--accent);border-color:var(--accent)}
html[data-scheme] #mzaback{background-color:var(--accent)}
html[data-scheme] .skip-link{background:var(--accent)}
html[data-scheme] .health-k1649 :is(a,button,input):focus-visible{outline-color:var(--accent)}

/* 轮播字幕：渐变压暗，左对齐 */
html[data-scheme] #slides .item h2{background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.68));text-align:left;padding:2.2em 5% 10px;font-size:15px}
html[data-scheme] #slides .slick-dots .slick-active button{background-color:var(--accent)}

/* 页脚 */
html[data-scheme] #footer{background:var(--footer-bg);color:rgba(255,255,255,.75)}
html[data-scheme] #footer a{color:rgba(255,255,255,.75)}
html[data-scheme] #footer a:hover{color:#fff}
html[data-scheme] #footer-links a{color:rgba(255,255,255,.75)}
html[data-scheme] #footer-links a:hover{color:#fff}

/* YMYL 合规区块：只跟圆角，不改语义色 */
html[data-scheme] .ymyl-notice{border-radius:var(--radius-sm)}

/* 窄屏修正（覆盖原版媒体查询里的硬编码蓝） */
@media (max-width:1024px){
  html[data-scheme] #nav .inner{background:var(--nav-bg);border-radius:0}
}
@media (max-width:768px){
  html[data-scheme] #search{background-color:var(--nav-bg)}
  html[data-scheme] #topbar{background:var(--nav-bg)}
}

/* ---------- a · 清水蓝（默认，延续品牌蓝的稳妥现代化） ---------- */
html[data-scheme="a"]{
  --bg:#f4f8fb; --paper:#fff; --ink:#243240; --muted:#64748b;
  --accent:#0b72b9; --nav-bg:#0d6ab8; --header-bg:#fff;
  --tint:#edf4fa; --line:#e2eaf2; --footer-bg:#0e4a78;
  --radius:10px; --radius-sm:6px;
  --shadow:0 1px 2px rgba(15,40,70,.05);
}

/* ---------- b · 暖纸杂志（米纸底 + 衬线标题 + 赤陶点缀） ---------- */
html[data-scheme="b"]{
  --bg:#f6f2ea; --paper:#fffdf8; --ink:#33302a; --muted:#827a6b;
  --accent:#b4532a; --nav-bg:#2f4034; --header-bg:#f6f2ea;
  --tint:#f1ece1; --line:#e6ddcb; --footer-bg:#2f4034;
  --radius:6px; --radius-sm:4px;
  --shadow:none;
  --font-display:"Noto Serif SC","Source Han Serif SC","STZhongsong","SimSun",serif;
}
html[data-scheme="b"] .entry h2,html[data-scheme="b"] .entry h3{border-left:3px solid var(--accent);padding-left:.5em;color:#4a4436}
html[data-scheme="b"] #topbar{background:var(--nav-bg)}

/* ---------- c · 高对照（白底大字，中老年友好） ---------- */
html[data-scheme="c"]{
  --bg:#fff; --paper:#fff; --ink:#111; --muted:#444;
  --accent:#0a4f8f; --nav-bg:#0a4f8f; --header-bg:#fff;
  --tint:#f2f2f2; --line:#c9c9c9; --footer-bg:#1c1c1c;
  --radius:4px; --radius-sm:3px;
  --shadow:none;
  --fs-base:17px; --fs-entry:18px;
}
html[data-scheme="c"] #postTitle{font-size:28px}
html[data-scheme="c"] .blogItem .title{font-size:20px}
html[data-scheme="c"] .entry a{text-underline-offset:3px}
html[data-scheme="c"] .health-k1649 :is(a,button,input):focus-visible{outline-width:3px}
html[data-scheme="c"] .entry h2{border-bottom:2px solid var(--line);padding-bottom:.3em}

/* ---------- d · 薄荷卡片（健康绿 + 大圆角软阴影） ---------- */
html[data-scheme="d"]{
  --bg:#eef4f0; --paper:#fff; --ink:#26332c; --muted:#667a6f;
  --accent:#12805c; --nav-bg:#12805c; --header-bg:#fff;
  --tint:#e8f1ec; --line:#dfe9e3; --footer-bg:#173f2f;
  --radius:14px; --radius-sm:8px;
  --shadow:0 2px 10px rgba(23,73,54,.07);
}
html[data-scheme="d"] .entry h2,html[data-scheme="d"] .entry h3{border-left:4px solid var(--accent);padding-left:.5em;color:#1f4a38}
