/*
Theme Name: 鲁朗 · 素白石青
Theme URI: https://www.lulng.com
Author: 鲁朗
Author URI: https://www.lulng.com
Description: 素白底、石青点缀，线条更清简。同一套版式，换一层颜色与气质，适合偏向产品、记录类内容。
Version: 3.0.0
Requires at least: 5.5
Tested up to: 6.6
Requires PHP: 7.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: lulng
Tags: blog, one-column, two-columns, custom-menu, custom-colors, editor-style, featured-images, translation-ready, threaded-comments, right-sidebar
*/

/* 主题实际样式：下方为共用基座（结构 + 响应式），颜色与字体在 assets/skin.css 覆盖。
   改样式请改源文件 wp-v3/base.css / wp-v3/wp-only.css，再重跑 build.py。 */

/* ============================================================
   v3 基座 · 为「无标题短句流」而做
   与 round2 的区别：把承重结构从「标题」换成「正文首句」
   ------------------------------------------------------------
   变量由皮肤文件提供；本文件只负责结构与响应式。
   断点：1180（收窄）/ 900（平板，侧栏转上）/ 620（手机，抽屉导航）
   ============================================================ */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--fg);font-family:var(--fbody);
  font-size:var(--fs);line-height:var(--lh);-webkit-font-smoothing:antialiased;
  overflow-x:hidden}
html[data-night]{background:var(--bg)}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}
img{max-width:100%;height:auto;display:block}
::selection{background:var(--acc);color:#fff}
:focus-visible{outline:2px solid var(--acc);outline-offset:2px;border-radius:3px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 28px}

/* ---------------- 顶栏 ---------------- */
.hdr{position:sticky;top:0;z-index:60;background:var(--bg);
  border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;gap:20px;height:66px}
.brand{display:flex;align-items:center;gap:11px;flex-shrink:0;min-height:44px}
.seal{width:32px;height:32px;border-radius:5px;background:var(--acc);color:#fff;
  display:flex;align-items:center;justify-content:center;font-family:var(--fhead);
  font-size:18px;line-height:1;flex-shrink:0}
.brand .nm{font-family:var(--fhead);font-size:19px;font-weight:700;letter-spacing:.06em;color:var(--tx)}
.brand .sub{display:none}
.nav{margin-left:auto;display:flex;align-items:center;gap:4px}
.nav ul{display:flex;gap:2px;list-style:none;align-items:center}
.nav li{position:relative}
.nav a{padding:9px 12px;border-radius:6px;font-size:15px;letter-spacing:.06em;
  color:var(--fg);white-space:nowrap;display:block}
.nav a:hover{color:var(--acc);background:color-mix(in srgb,var(--acc) 8%,transparent)}
.nav .cur>a{color:var(--acc)}
.nav .caret{font-size:10px;opacity:.6;margin-left:5px}
.nav ul.sub{display:none;position:absolute;top:100%;left:0;min-width:180px;padding:6px;
  background:var(--card);border:1px solid var(--line-2);border-radius:8px;
  box-shadow:0 10px 26px rgba(0,0,0,.14);list-style:none;z-index:70}
.nav li:hover>ul.sub,.nav li:focus-within>ul.sub,.nav li.open>ul.sub{display:block}
.nav ul.sub a{font-size:14.5px}
.tools{display:flex;align-items:center;gap:2px;flex-shrink:0}
.tbtn{width:44px;height:44px;border-radius:8px;display:flex;align-items:center;
  justify-content:center;font-size:16px;color:var(--mut);line-height:1}
.tbtn:hover{background:var(--hover);color:var(--fg)}
/* 搜索：手机上收成按钮 */
.find{position:relative}
.find input{width:150px;height:44px;padding:0 46px 0 13px;border-radius:8px;
  border:1px solid var(--line-2);background:var(--card);color:var(--fg);font-size:14px;
  font-family:var(--fbody);transition:width .2s}
.find input:focus{width:210px;outline:none;border-color:var(--acc)}
.find button{position:absolute;right:1px;top:1px;width:44px;height:44px;border-radius:7px;
  color:var(--mut);font-size:15px}
.burger{display:none;width:44px;height:44px;border-radius:8px;font-size:19px;color:var(--fg)}
.burger:hover{background:var(--hover)}

/* ---------------- 页头签名区 ---------------- */
.masthead{padding:46px 0 30px;border-bottom:1px solid var(--line)}
.masthead h1{font-family:var(--fhead);font-size:clamp(24px,3.4vw,34px);font-weight:700;
  letter-spacing:.06em;line-height:1.4;color:var(--tx)}
.masthead p{margin-top:12px;font-size:15px;line-height:1.95;color:var(--mut);max-width:44em}
.counts{margin-top:20px;display:flex;gap:22px;flex-wrap:wrap;font-size:13.5px;color:var(--mut);
  letter-spacing:.08em}
.counts b{font-family:var(--fhead);font-size:17px;color:var(--acc);margin-right:4px;font-weight:700}

/* ---------------- 最新一条（大卡） ---------------- */
.today{padding:40px 0 8px}
.tcard{display:block;padding:34px 34px 28px;border-radius:var(--radius);
  background:var(--card);border:1px solid var(--line);
  border-left:3px solid var(--acc);transition:box-shadow .2s,border-color .2s}
.tcard:hover{box-shadow:0 12px 30px rgba(0,0,0,.09)}
.tcard .tdate{display:block;font-size:12.5px;letter-spacing:.22em;color:var(--acc);
  font-family:var(--sans);text-transform:uppercase;margin-bottom:18px}
.tcard .tsay{font-family:var(--fhead);font-size:clamp(20px,2.5vw,27px);line-height:1.85;
  color:var(--tx);font-weight:700;letter-spacing:.02em}
.tcard .tex{margin-top:16px;font-size:16px;line-height:2;color:var(--mut);max-width:46em}
.tcard .tfoot{display:flex;align-items:center;gap:16px;margin-top:22px;flex-wrap:wrap;
  font-size:13px;color:var(--mut);letter-spacing:.1em}
.tcard .go{margin-left:auto;color:var(--acc);font-weight:400}
.tcard:hover .go::after{content:" →"}

/* ---------------- 时间流 ---------------- */
.stream{padding:34px 0 10px}
.sec-t{display:flex;align-items:baseline;gap:14px;padding-bottom:12px;
  border-bottom:1px solid var(--line-2);margin-bottom:8px}
.sec-t h2{font-family:var(--fhead);font-size:20px;font-weight:700;letter-spacing:.1em;color:var(--tx)}
.sec-t .en{margin-left:auto;font-size:12px;letter-spacing:.26em;color:var(--mut);font-family:var(--sans)}
.mon{display:flex;align-items:baseline;gap:12px;margin:30px 0 6px;font-family:var(--fhead)}
.mon .y{font-size:15px;color:var(--acc);letter-spacing:.14em;font-weight:700}
.mon .m{font-size:26px;color:var(--tx);font-weight:700;letter-spacing:.04em}
.mon .n{margin-left:auto;font-size:12.5px;color:var(--mut);letter-spacing:.14em;font-family:var(--sans)}

.tl{list-style:none}
/* 整行是一个 <li>，里面放一层铺满的 .tl-cover 链接来承接点击。
   网格放在 <li> 上（不能把链接作为网格容器再往里塞别的链接）。 */
.tl-i{position:relative;display:grid;grid-template-columns:76px minmax(0,1fr);gap:22px;
  border-bottom:1px solid var(--line);
  padding:20px 14px 20px 8px;border-radius:8px;transition:background .16s}
.tl-i:hover{background:var(--hover)}
.tl-cover{position:absolute;inset:0;border-radius:8px;z-index:1}
.tl-d{font-family:var(--sans);font-size:13px;color:var(--mut);letter-spacing:.1em;
  padding-top:6px;line-height:1.7}
.tl-d b{display:block;font-family:var(--fhead);font-size:19px;color:var(--tx);
  letter-spacing:.02em;font-weight:700}
.tl-i:hover .tl-d b{color:var(--acc)}
.tl-c{min-width:0}
.tl-x{font-family:var(--fhead);font-size:19px;line-height:1.9;color:var(--tx);font-weight:700;
  display:block;letter-spacing:.01em;overflow-wrap:anywhere}
.tl-ex{margin-top:8px;font-size:15px;line-height:1.95;color:var(--mut);
  display:block;max-width:42em;overflow-wrap:anywhere}
.tl-m{display:flex;align-items:center;gap:14px;margin-top:11px;font-size:12.5px;
  color:var(--mut);letter-spacing:.1em;flex-wrap:wrap}
.tl-m .cat{color:var(--acc);opacity:.9}
/* 分类链接要浮在整行链接之上，否则点不到 */
.tl-m .cat{position:relative;z-index:2}
/* 可点区域要铺满整个标签盒：外层 span 是 25px 高，内部 <a> 只有 17px，
   相差的 8px 点下去什么都不发生（实测死区正好落在这一圈）。
   让 <a> 撑满父盒后，标签范围内每一像素都有归属。 */
.tl-m .cat a{display:flex;align-items:center;height:100%}
.tl-m .dot{width:3px;height:3px;border-radius:50%;background:var(--line-2)}
/* 短句型：正文即主角，不加摘要（视觉上比长文更抢眼） */
.tl-i.say .tl-x{font-size:21px;font-weight:700;line-height:1.8}
.tl-i.note .tl-x{font-size:18.5px;font-weight:400;color:var(--fg)}

/* ---------------- 分页 ---------------- */
.pg{display:flex;align-items:center;gap:8px;justify-content:center;
  margin:44px 0 10px;flex-wrap:wrap}
.pg a,.pg span{min-width:44px;height:44px;padding:0 14px;border-radius:8px;
  display:flex;align-items:center;justify-content:center;font-size:14.5px;
  border:1px solid var(--line);color:var(--fg)}
.pg a:hover{background:var(--hover);border-color:var(--line-2)}
.pg .cur{background:var(--acc);color:#fff;border-color:var(--acc)}

/* ---------------- 归档年表 ---------------- */
.year{margin-top:38px}
.year-h{display:flex;align-items:baseline;gap:14px;padding-bottom:10px;
  border-bottom:1px solid var(--line-2)}
.year-h h2{font-family:var(--fhead);font-size:30px;font-weight:700;color:var(--tx);
  letter-spacing:.04em}
.year-h .bar{height:6px;border-radius:3px;background:var(--acc);opacity:.5;margin-left:6px;
  align-self:center}
.year-h .n{margin-left:auto;font-size:13px;color:var(--mut);letter-spacing:.14em;
  font-family:var(--sans)}
.mrow{display:grid;grid-template-columns:64px minmax(0,1fr);gap:18px;
  padding:13px 10px;border-bottom:1px solid var(--line);border-radius:8px}
.mrow:hover{background:var(--hover)}
.mrow .mm{font-family:var(--sans);font-size:13px;color:var(--mut);letter-spacing:.06em;padding-top:3px}
.mrow .lines{display:flex;flex-direction:column;gap:6px;min-width:0}
.mrow .ln{display:block;font-size:15.5px;line-height:1.85;color:var(--fg);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mrow .ln:hover{color:var(--acc)}
.mrow .ln .d{font-family:var(--sans);font-size:12.5px;color:var(--mut);
  letter-spacing:.08em;margin-right:12px}

/* ---------------- 单篇 ---------------- */
.post{padding:30px 0 60px}
.crumb{font-size:13px;color:var(--mut);letter-spacing:.1em;margin-bottom:22px;
  display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.crumb a:hover{color:var(--acc)}
.crumb .sep{opacity:.5}
/* 无标题短句页：正文即主角，居中大字 */
.solo{max-width:30em;margin:6vh auto 0;text-align:center}
.solo .stamp{font-family:var(--sans);font-size:12.5px;letter-spacing:.26em;
  color:var(--acc);text-transform:uppercase;margin-bottom:26px}
.solo .sbody{font-family:var(--fhead);font-size:clamp(22px,3.2vw,30px);line-height:1.95;
  color:var(--tx);font-weight:700;letter-spacing:.02em}
.solo .sfoot{margin-top:34px;font-size:13px;color:var(--mut);letter-spacing:.12em}
.ph{padding-bottom:24px;border-bottom:1px solid var(--line)}
.ph .kick{font-family:var(--sans);font-size:12.5px;letter-spacing:.26em;color:var(--acc);
  text-transform:uppercase;margin-bottom:16px}
.ph h1{font-family:var(--fhead);font-size:clamp(24px,3.6vw,34px);line-height:1.55;
  font-weight:700;letter-spacing:.02em;color:var(--tx);overflow-wrap:anywhere}
.pmeta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:18px;
  font-size:13px;color:var(--mut);letter-spacing:.08em}
.pmeta .cat a{color:var(--acc)}
/* 阅读工具条：仅长文出现 */
.readbar{display:flex;align-items:center;gap:8px;padding:14px 0;border-bottom:1px solid var(--line);
  position:sticky;top:66px;background:var(--bg);z-index:40}
.readbar .lbl{font-size:12.5px;color:var(--mut);letter-spacing:.2em;margin-right:4px}
.rbtn{min-width:44px;height:44px;padding:0 12px;border-radius:8px;border:1px solid var(--line);
  font-size:14.5px;color:var(--fg);display:flex;align-items:center;justify-content:center}
.rbtn:hover{background:var(--hover);border-color:var(--line-2)}
.readbar .sp{flex:1}
.pwrap{display:grid;grid-template-columns:minmax(0,1fr);gap:44px;padding-top:36px}
.pwrap.with-toc{grid-template-columns:210px minmax(0,1fr)}
.pwrap.with-toc .col-main{order:2}
.pwrap.with-toc .aside{order:1}
.aside{position:sticky;top:150px;align-self:start;max-height:calc(100vh - 190px);overflow:auto}
.toc{border:1px solid var(--line);border-radius:10px;background:var(--card);padding:14px 6px}
.toc .tt{font-family:var(--sans);font-size:11.5px;letter-spacing:.24em;color:var(--mut);
  padding:0 12px 10px;text-transform:uppercase}
.toc ul{list-style:none}
.toc li a{display:flex;align-items:center;min-height:44px;padding:8px 12px;font-size:14px;line-height:1.7;color:var(--mut);
  border-radius:6px;border-left:2px solid transparent}
.toc li a:hover{color:var(--fg);background:var(--hover)}
.toc li.d3 a{padding-left:24px;font-size:13.5px}
.toc li a.on{color:var(--acc);border-left-color:var(--acc);background:var(--hover)}
.col-main{min-width:0}
.content{font-size:var(--fs);line-height:var(--lh);color:var(--fg);max-width:38em}
.content>:first-child{margin-top:0}
.content p{margin:0 0 1.35em}
.content h2{font-family:var(--fhead);font-size:22px;line-height:1.6;font-weight:700;
  color:var(--tx);margin:2.1em 0 .85em;padding-top:.2em;letter-spacing:.02em}
.content h2::before{content:attr(data-no);font-size:13px;color:var(--acc);
  letter-spacing:.2em;display:block;margin-bottom:8px;font-family:var(--sans)}
.content h3{font-family:var(--fhead);font-size:18.5px;line-height:1.7;font-weight:700;
  color:var(--tx);margin:1.7em 0 .7em}
.content h3::before{content:"· ";color:var(--acc)}
.content img{border-radius:10px;margin:1.4em 0;border:1px solid var(--line)}
.content blockquote{margin:1.6em 0;padding:16px 22px;border-left:3px solid var(--acc);
  background:color-mix(in srgb,var(--acc) 6%,transparent);border-radius:0 8px 8px 0}
.content blockquote p{margin:.4em 0}
.content blockquote cite{display:block;margin-top:8px;font-size:13.5px;color:var(--mut);
  font-style:normal;letter-spacing:.08em}
.content ul,.content ol{margin:0 0 1.35em 1.3em}
.content li{margin:.35em 0}
.content a{color:var(--acc);border-bottom:1px solid color-mix(in srgb,var(--acc) 40%,transparent)}
.content table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:15.5px}
.content th,.content td{border:1px solid var(--line-2);padding:9px 12px;text-align:left}
.content hr{border:none;border-top:1px solid var(--line);margin:2.4em 0}
.content code{font-family:var(--mono);font-size:.9em;background:var(--hover);
  padding:2px 6px;border-radius:5px}

/* 上下篇：无标题也能读（用日期） */
.step{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:52px 0 0;
  padding-top:26px;border-top:1px solid var(--line)}
.step a{padding:18px 20px;border:1px solid var(--line);border-radius:10px;background:var(--card);
  display:flex;flex-direction:column;gap:8px;min-width:0}
.step a:hover{border-color:var(--acc)}
.step .k{font-family:var(--sans);font-size:11.5px;letter-spacing:.2em;color:var(--mut);
  text-transform:uppercase}
.step .v{font-family:var(--fhead);font-size:16.5px;line-height:1.75;color:var(--tx);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.step .d{font-size:12.5px;color:var(--mut);letter-spacing:.1em;font-family:var(--sans)}
.step .nx{text-align:right;align-items:flex-end}
.step .ph-h{visibility:hidden}

/* 评论 */
.cmt{margin-top:56px;padding-top:30px;border-top:1px solid var(--line)}
.cmt h2{font-family:var(--fhead);font-size:20px;font-weight:700;color:var(--tx);
  letter-spacing:.08em;margin-bottom:18px}
.cmt-list{list-style:none}
.cmt-list li{padding:16px 0;border-bottom:1px solid var(--line)}
.cmt-meta{display:flex;gap:12px;align-items:baseline;font-size:13px;color:var(--mut);margin-bottom:7px}
.cmt-meta b{color:var(--fg);font-weight:700}
.cmt-body{font-size:15.5px;line-height:1.9}
.cmt-form label{display:block;font-size:13.5px;color:var(--mut);margin:14px 0 6px;letter-spacing:.08em}
.cmt-form textarea,.cmt-form input{width:100%;border:1px solid var(--line-2);border-radius:8px;
  background:var(--card);color:var(--fg);padding:11px 13px;font:inherit;font-size:15px}
.cmt-form textarea{min-height:120px;resize:vertical}

/* ---------------- 页脚 ---------------- */
.foot{margin-top:70px;background:var(--footbg);color:var(--footfg);
  padding:40px 0;font-size:14px;line-height:2}
.foot-in{display:flex;gap:20px;flex-wrap:wrap;align-items:center}
.foot a{color:var(--footfg)}
.foot a:hover{color:var(--acc)}
.foot .mut{color:var(--footmut);font-size:13px}
.foot .r{margin-left:auto;display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.totop{position:fixed;right:22px;bottom:22px;width:46px;height:46px;border-radius:50%;
  background:var(--acc);color:#fff;display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 22px rgba(0,0,0,.2);opacity:0;pointer-events:none;transition:opacity .2s;z-index:70;
  border:none;cursor:pointer;font-size:17px}
.totop.show{opacity:1;pointer-events:auto}

/* ---------------- 搜索/空态 ---------------- */
.empty{padding:70px 0;text-align:center;color:var(--mut)}
.empty .big{font-family:var(--fhead);font-size:34px;color:var(--tx);margin-bottom:12px}

/* ---------------- 响应式 ---------------- */
@media (max-width:1180px){
  .wrap{padding:0 24px}
  .d-narrow{display:none}
}
@media (max-width:900px){
  .pwrap.with-toc{grid-template-columns:minmax(0,1fr)}
  .pwrap.with-toc .col-main{order:1}
  .pwrap.with-toc .aside{order:0;position:static;max-height:none;margin-bottom:8px}
  .aside{margin-bottom:4px}
  .masthead{padding:34px 0 24px}
  .tl-i{grid-template-columns:64px minmax(0,1fr);gap:16px;padding:18px 8px}
  .tcard{padding:26px 24px 22px}
  .step{grid-template-columns:1fr}
  .step .nx{text-align:left;align-items:flex-start}
  /* 导航收成抽屉：620-900 之间放不下整排导航，这里就必须收 */
  .hdr-in{gap:12px}
  .burger{display:flex;align-items:center;justify-content:center;order:3;margin-left:auto}
  .tools{order:2;margin-left:auto}
  .nav{order:4;position:fixed;inset:66px 0 auto 0;background:var(--bg);
    border-bottom:1px solid var(--line-2);box-shadow:0 16px 30px rgba(0,0,0,.13);
    display:none;padding:10px 12px 18px;margin:0;max-height:calc(100vh - 66px);overflow:auto}
  .nav.open{display:block}
  .nav ul{flex-direction:column;align-items:stretch;gap:0}
  .nav li{border-bottom:1px solid var(--line)}
  .nav li:last-child{border-bottom:none}
  .nav a{padding:15px 10px;font-size:16.5px;border-radius:0;min-height:52px;display:flex;
    align-items:center}
  .nav ul.sub{display:block;position:static;border:none;box-shadow:none;background:none;
    padding:0 0 8px 14px;min-width:0}
  .nav ul.sub a{font-size:15px;color:var(--mut);padding:11px 10px;min-height:44px}
  .nav .caret{display:none}
  .find input{width:0;padding:0;border:none;background:none;opacity:0;pointer-events:none}
  .find.open input{width:min(52vw,240px);padding:0 46px 0 13px;border:1px solid var(--line-2);
    background:var(--card);opacity:1;pointer-events:auto}
  .find.open{order:0}
}
@media (max-width:620px){
  .wrap{padding:0 18px}
  .hdr-in{height:58px}
  .brand .nm{font-size:17.5px}
  .nav{inset:58px 0 auto 0;max-height:calc(100vh - 58px)}
  .readbar{position:static}
  .sec-t h2{font-size:18px}
  .tl-i{grid-template-columns:minmax(0,1fr);gap:8px;padding:16px 6px}
  .tl-d{display:flex;align-items:baseline;gap:8px;padding-top:0;order:-1}
  .tl-d b{font-size:15px;display:inline}
  .tl-x{font-size:18.5px}
  .tl-i.say .tl-x{font-size:20px}
  .tl-ex{font-size:14.5px;line-height:1.9}
  .mon .m{font-size:22px}
  .tcard{padding:22px 18px 20px}
  .tcard .tsay{font-size:20px;line-height:1.8}
  .tcard .tex{font-size:15px}
  .masthead h1{font-size:23px}
  .counts{gap:14px;font-size:12.5px}
  .solo{margin-top:4vh}
  .solo .sbody{font-size:21px;line-height:1.9}
  .content{font-size:17px;line-height:1.95;max-width:none}
  .content h2{font-size:19.5px}
  .content h3{font-size:17.5px}
  .year-h h2{font-size:25px}
  .mrow{grid-template-columns:44px minmax(0,1fr);gap:12px;padding:12px 6px}
  .mrow .ln{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
    min-height:44px;padding:8px 0;border-bottom:1px solid var(--line)}
  .mrow{border-bottom:none}
  .mrow .lines{gap:0}
  .foot{padding:30px 0}
}
/* 页脚栏目链接本来只有 26px 高、面包屑只有 26px 高，手指点不准。
   900px 覆盖手机与平板竖屏（768px 一带）——这两种宽度都可能用手指点。
   桌面宽度是鼠标操作，不动，保留原来的紧凑排布。

   两条都用 min-height 明确写死：只靠 padding 撑，高度会落在 43~44px 的
   擦边区间，同一页面两次量测能得出不同结果，验收数字就不可信了。 */
@media (max-width:900px){
  .foot .foot-top .fcol a{display:flex;align-items:center;min-height:44px;padding:9px 0}
  .crumb a{display:inline-block;min-height:44px;padding:9px 0}
}
@media (max-width:400px){
  .tbody{font-size:16.5px}
  .tl-x{font-size:17.5px}
}
/* 说明：页脚「回到顶部」、正文里的分类链接是句子里的行内链接，
   强行撑到 44px 会把行距顶乱，这里保留原样；真正需要点准的控件（导航、
   分页、按钮、页脚栏目）在手机上都不小于 44px。 */
@media print{
  .hdr,.foot,.totop,.readbar,.step,.cmt{display:none}
  body{background:#fff;color:#000}
}

/* 夜间：仅换变量，结构不动 */
html[data-night] .hdr{background:var(--bg)}
html[data-night] .tcard:hover{box-shadow:0 12px 30px rgba(0,0,0,.5)}


/* ============================================================
   WordPress 专属补充（演示稿里没有的部分）
   目标：WP 自动生成的类名一律对上 v3 版式，不额外发明新结构。
   ============================================================ */

/* ---- 无障碍：屏幕阅读器文本 / 跳转链接 ---- */
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link:focus{position:fixed;left:16px;top:12px;width:auto;height:auto;clip:auto;z-index:200;
  padding:10px 16px;border-radius:8px;background:var(--acc);color:#fff;font-size:14px;margin:0}

/* ---- 导航：WordPress 输出 ul.menu / .sub-menu / .current-menu-item ---- */
.nav ul.menu{display:flex;gap:2px;list-style:none;align-items:center}
.nav .menu-item-has-children{position:relative}
.nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:180px;padding:6px;
  margin:0;list-style:none;background:var(--card);border:1px solid var(--line-2);border-radius:8px;
  box-shadow:0 10px 26px rgba(0,0,0,.14);z-index:70}
.nav li:hover>.sub-menu,.nav li:focus-within>.sub-menu,.nav li.open>.sub-menu{display:block}
.nav .sub-menu a{font-size:14.5px}
.nav .current-menu-item>a,.nav .current-menu-ancestor>a{color:var(--acc)}
.nav .caret{font-size:10px;opacity:.6;margin-left:5px}
.menu-item-has-children>a .caret::before{content:"▾"}

/* 页脚菜单列表 */
.fmenu{list-style:none;margin:0;padding:0}
.fmenu li{margin:0}
.fmenu .sub-menu{list-style:none;padding-left:14px}

/* ---- 搜索表单（404 / 无结果） ---- */
.sform{display:flex;gap:8px;max-width:min(460px,100%)}
.sform .sform-i{flex:1;height:46px;padding:0 14px;border-radius:8px;border:1px solid var(--line-2);
  background:var(--card);color:var(--fg);font:inherit;font-size:15px;min-width:0}
.sform .sform-i:focus{outline:none;border-color:var(--acc)}
.sform button{min-width:64px;height:46px;border-radius:8px;background:var(--acc);color:#fff;
  border:none;font:inherit;font-size:15px;cursor:pointer}

/* ---- 页脚：关于我 + 两列表 ---- */
.foot .foot-top{display:flex;gap:40px;flex-wrap:wrap;align-items:flex-start}
.foot .fb{max-width:34em;min-width:min(300px,100%)}
.foot .fb .seal{margin-bottom:12px}
.foot .fb p{line-height:2;font-size:14.5px}
.foot .fb b{color:var(--footfg);font-weight:700}
.foot .fx{display:flex;gap:44px;margin-left:auto;flex-wrap:wrap}
.foot .fcol{display:flex;flex-direction:column;gap:6px;font-size:14px}
.foot .fcol b{font-family:var(--sans);font-size:11.5px;letter-spacing:.24em;color:var(--footmut);
  font-weight:400;margin-bottom:4px}
.foot .fcol a{color:var(--footfg);font-size:14px;padding:3px 0;min-height:26px}
.foot .fcol a:hover{color:var(--acc)}
.foot .fd{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:34px;
  padding-top:20px;border-top:1px solid color-mix(in srgb,var(--footfg) 16%,transparent);font-size:13px}
.foot .fd .rt{margin-left:auto}

/* ---- 评论：把 WP 默认类名接到 .cmt 版式 ---- */
.cmt .comment-list{list-style:none;padding:0;margin:0}
.cmt .comment-list li{list-style:none}
.cmt .comment-list .children{list-style:none;padding-left:22px;margin-top:10px;
  border-left:1px solid var(--line)}
.cmt .comment-body{padding:16px 0;border-bottom:1px solid var(--line);font-size:15.5px;line-height:1.95}
.cmt .comment-meta{display:flex;gap:12px;align-items:baseline;font-size:13px;color:var(--mut);
  margin-bottom:7px;flex-wrap:wrap}
.cmt .comment-author{display:flex;gap:9px;align-items:center}
.cmt .comment-author b,.cmt .comment-author .fn{color:var(--fg);font-weight:700;font-style:normal;font-size:14px}
.cmt .comment-author .avatar{border-radius:50%;width:34px;height:34px}
.cmt .comment-metadata a{color:var(--mut);font-size:12.5px;letter-spacing:.06em}
.cmt .comment-metadata a:hover{color:var(--acc)}
.cmt .comment-content p{margin:.55em 0}
.cmt .reply a{font-size:13px;color:var(--acc);letter-spacing:.08em}
.cmt .comment-respond{margin-top:26px}
.cmt .comment-reply-title,.cmt .comment-respond h3{font-family:var(--fhead);font-size:19px;
  font-weight:700;color:var(--tx);letter-spacing:.06em;margin-bottom:12px}
.cmt .comment-reply-title small a{font-size:13px;color:var(--mut)}
.cmt .comment-form label{display:block;font-size:13.5px;color:var(--mut);margin:14px 0 6px;letter-spacing:.08em}
.cmt .comment-form p{margin:0 0 10px;font-size:13.5px;color:var(--mut)}
.cmt .comment-form textarea,.cmt .comment-form input[type=text],.cmt .comment-form input[type=email],
.cmt .comment-form input[type=url]{width:100%;border:1px solid var(--line-2);border-radius:8px;
  background:var(--card);color:var(--fg);padding:11px 13px;font:inherit;font-size:15px;min-height:46px}
.cmt .comment-form textarea{min-height:120px;resize:vertical;line-height:1.9}
.cmt .comment-form-cookies-consent{display:flex;gap:9px;align-items:center}
.cmt .comment-form-cookies-consent input{width:20px;height:20px;min-height:0}
.cmt .comment-form-cookies-consent label{margin:0}
.cmt .form-submit{margin-top:16px}
.cmt .submit,.cmt .rbtn.submit{min-height:46px;padding:0 22px;border-radius:8px;background:var(--acc);
  color:#fff;border:none;font:inherit;font-size:15px;letter-spacing:.06em;cursor:pointer}
.cmt .submit:hover{filter:brightness(1.06)}
.cmt .comment-navigation{display:flex;gap:14px;justify-content:space-between;margin:18px 0;font-size:14px}
.cmt .comment-navigation a{color:var(--acc);padding:8px 0}

/* ---- 正文里由 WP 生成的东西 ---- */
.content .wp-caption,.content figure{margin:1.4em 0;max-width:100%}
.content .wp-caption-text,.content figcaption{font-size:13.5px;color:var(--mut);
  text-align:center;margin-top:8px;letter-spacing:.04em}
.content .alignleft{float:left;margin:0 1.4em 1em 0}
.content .alignright{float:right;margin:0 0 1em 1.4em}
.content .aligncenter{margin-left:auto;margin-right:auto}
.content ul li::marker,.content ol li::marker{color:var(--acc)}
.content h2 a,.content h3 a{border:none}
.content .pg a,.content .pg span{min-width:40px;height:40px}
.content pre{background:var(--hover);border:1px solid var(--line);border-radius:8px;
  padding:14px 16px;overflow:auto;font-family:var(--mono);font-size:14px;line-height:1.7}

/* ---- 归档页签名区里的数字 ---- */
.masthead p b{color:var(--acc);font-weight:700}
.masthead p a{color:var(--acc)}

/* ---- 单篇：抬头里的二级栏目、solo 页的 h1 ---- */
.ph .kick a{color:var(--acc)}
.solo .sbody{margin:0;font-weight:700}
.post-page .content{max-width:38em;margin:0 auto}

/* ---- 窄屏页脚 ---- */
@media (max-width:620px){
  .foot .fx{margin-left:0;gap:32px;width:100%}
  .foot .fcol{flex:1;min-width:120px}
  .foot .fd{margin-top:26px}
  .sform{max-width:100%}
  .cmt .comment-list .children{padding-left:12px}
}

/* ---- 后台编辑器观感与前台一致 ---- */
body.block-editor-page{background:#fff}
