/* ============================================================
   X-GORB Blog · Unified Design System 2.0.0
   「静谧跨平台」—— 融合三类主流美学为一套连贯体系：
   · Microsoft Fluent：Acrylic/Mica 材质、柔和分层深度、Fluent 缓动
   · Google Material3：tonal 表面、分层高度阴影、填充式输入、状态层
   · Apple：系统字体、hairline 微分隔、大间距、弧面打磨
   原则：单色相 + 中性暖灰，克制、连贯、不冲突
   ============================================================ */

/* ---------- 1. 设计令牌（浅色） ---------- */
:root{
  /* 中性表面（暖灰） */
  --bg:#f6f6f8;
  --surface:#ffffff;
  --surface-1:#fbfbfd;
  --surface-2:#f0f0f3;
  --line:rgba(18,18,22,.10);
  --line-2:rgba(18,18,22,.18);

  /* 文字层级 */
  --txt-1:#1c1c1f;
  --txt-2:#48484c;
  --txt-3:#87878c;

  /* 单一色相（蓝） */
  --acc:#3d6de0;
  --acc-strong:#355ccb;
  --on-acc:#ffffff;
  --acc-soft:rgba(61,109,224,.12);
  --danger:#e5484d;

  /* 材质（Fluent Acrylic / Mica） */
  --acrylic:rgba(255,255,255,.72);
  --acrylic-strong:rgba(255,255,255,.86);
  --mica:rgba(246,246,248,.78);

  /* 分层高度（M3 elevation） */
  --e1:0 1px 2px rgba(20,20,24,.05),0 2px 6px -1px rgba(20,20,24,.07);
  --e2:0 4px 12px -2px rgba(20,20,24,.10),0 2px 5px rgba(20,20,24,.06);
  --e3:0 24px 54px -18px rgba(20,20,24,.24),0 10px 24px -14px rgba(20,20,24,.18);

  /* 形态 */
  --r-card:16px;
  --r-ctl:12px;
  --r-pill:999px;

  /* 动效（Fluent 快缓动） */
  --ease:cubic-bezier(.2,0,0,1);
  --dur:.25s;

  /* 阴影/状态覆盖 */
  --ring:0 0 0 3px rgba(61,109,224,.22);
  --topglow:radial-gradient(42rem 24rem at 50% -8rem,rgba(61,109,224,.08),transparent 72%);
}

/* ---------- 深色令牌 ---------- */
[data-theme="dark"]{
  --bg:#0e0e10;
  --surface:#18181b;
  --surface-1:#202024;
  --surface-2:#28282d;
  --line:rgba(255,255,255,.10);
  --line-2:rgba(255,255,255,.18);

  --txt-1:#f5f5f6;
  --txt-2:#bcbcc2;
  --txt-3:#85858b;

  --acc:#7d96ff;
  --acc-strong:#9db0ff;
  --on-acc:#0c1e52;
  --acc-soft:rgba(125,150,255,.18);
  --danger:#ff6b70;

  --acrylic:rgba(24,24,27,.70);
  --acrylic-strong:rgba(24,24,27,.88);
  --mica:rgba(14,14,16,.76);

  --e1:0 1px 3px rgba(0,0,0,.5);
  --e2:0 4px 14px -2px rgba(0,0,0,.6),0 2px 6px rgba(0,0,0,.5);
  --e3:0 24px 60px -20px rgba(0,0,0,.85),0 12px 32px -14px rgba(0,0,0,.7);

  --ring:0 0 0 3px rgba(125,150,255,.30);
  --topglow:radial-gradient(42rem 24rem at 50% -8rem,rgba(125,150,255,.12),transparent 72%);
}

/* ---------- 2. 基础 ---------- */
:root{
  --ff-b:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Inter","Helvetica Neue","PingFang SC","Hiragino Sans GB","Source Han Sans SC","Noto Sans SC","Microsoft YaHei","WenQuanYi Micro Hei",sans-serif;
  --ff-h:'Noto Serif SC','Source Han Serif SC','Songti SC',Georgia,serif;
  --ff-m:ui-monospace,SFMono-Regular,Menlo,Consolas,'JetBrains Mono',monospace;
  --fw-head:700;
}
html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{
  font-family:var(--ff-b)!important;
  background:var(--bg);
  background:var(--topglow),var(--bg);
  background-attachment:fixed;
  color:var(--txt-1);font-size:16px;line-height:1.65;font-weight:400;letter-spacing:-.005em;
}
h1,h2,h3,h4,h5{font-weight:var(--fw-head);letter-spacing:-.02em;color:var(--txt-1);font-family:var(--ff-h)}
a{color:inherit;text-decoration:none}
*{box-sizing:border-box}
::selection{background:var(--acc-soft);color:var(--txt-1)}
:focus-visible{outline:none;box-shadow:var(--ring)}
img{max-width:100%;height:auto}

/* 滚动条 */
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--txt-3) 46%,transparent);border-radius:8px;border:2px solid transparent;background-clip:content-box}
::-webkit-scrollbar-track{background:transparent}

/* 页面容器：微调主列宽，阅读更舒适 */
.content .container,.single .content .container{max-width:1200px}

/* ---------- 3. 毛玻璃胶囊导航 ---------- */
.site-header{
  background:transparent;border-bottom:none;padding-top:12px;
}
.site-header.stuck{background:transparent;backdrop-filter:none;box-shadow:none;border-bottom:none}
.nav{
  max-width:960px;margin:0 auto;height:54px;padding:0 10px;
  display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:10px;
  background:var(--acrylic);
  -webkit-backdrop-filter:saturate(160%) blur(22px);backdrop-filter:saturate(160%) blur(22px);
  border:1px solid var(--line);
  border-radius:var(--r-pill);
  box-shadow:var(--e1);
}
.site-header.stuck .nav{box-shadow:var(--e2)}
[data-theme=dark] .nav{background:var(--acrylic)}
.nav-center{flex:1;display:flex;justify-content:center;min-width:0}
.nav-brand{flex:none;display:flex;align-items:center;gap:10px;min-width:0}
.nav-brand-char{font-weight:650;font-size:1.02rem;letter-spacing:-.02em;color:var(--txt-1);white-space:nowrap}
.nav-brand-slogan{font-size:.62rem;font-weight:600;letter-spacing:.02em;color:var(--txt-3);white-space:nowrap;padding-left:10px;border-left:1px solid var(--line-2)}
.nav-logo{height:30px;width:30px;border-radius:7px;object-fit:contain;flex:none}
.nav-right{flex:none;gap:6px}
.nav-menu{display:flex;align-items:center;gap:2px}
.nav-menu > li > a{
  padding:.42rem 1.05rem;font-size:.86rem;font-weight:450;color:var(--txt-2);
  border-radius:var(--r-pill);position:relative;white-space:nowrap;
  transition:background var(--dur) var(--ease),color var(--dur);
}
.nav-menu > li > a:hover{background:var(--acc-soft);color:var(--acc)}
.nav-menu .current-menu-item > a,.nav-menu .current_page_item > a{color:var(--acc);font-weight:550}
.nav-menu .current-menu-item > a::after,.nav-menu .current_page_item > a::after{
  content:'';position:absolute;left:50%;bottom:.26rem;transform:translateX(-50%);
  width:5px;height:5px;border-radius:50%;background:var(--acc);
}
.nav-menu ul{
  background:var(--acrylic-strong);
  -webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);
  border:1px solid var(--line);border-radius:14px;box-shadow:var(--e3);padding:6px;
}
.nav-menu ul a{padding:.42rem .8rem;border-radius:9px;font-size:.84rem;color:var(--txt-2);white-space:nowrap}
.nav-menu ul a:hover{background:var(--surface-2);color:var(--txt-1)}

/* 操作按钮 */
.icon-btn{
  width:38px;height:38px;border:none;border-radius:50%;
  background:var(--surface-2);color:var(--txt-1);
  display:inline-flex;align-items:center;justify-content:center;
  transition:background var(--dur) var(--ease),transform .15s var(--ease);
}
.icon-btn:hover{background:var(--acc-soft);color:var(--acc)}
.icon-btn:active{transform:scale(.94)}

/* 汉堡按钮：仅手机显示；两横杠用 main.css 的 span，这里兜底 */
.nav-burger{
  width:38px;height:38px;border:none;border-radius:50%;
  background:var(--surface-2);color:var(--txt-1);
  display:none;align-items:center;justify-content:center;
  flex-direction:column;gap:5px;flex-shrink:0;
  transition:background var(--dur) var(--ease),transform .15s var(--ease);
}
.nav-burger:hover{background:var(--acc-soft);color:var(--acc)}
.nav-burger:active{transform:scale(.94)}
.nav-burger span{display:block;width:16px;height:2px;background:currentColor;border-radius:1px;transition:transform .3s var(--ease),opacity .2s}
.nav-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(3.5px) rotate(45deg)}
.nav-burger[aria-expanded="true"] span:nth-child(2){transform:translateY(-3.5px) rotate(-45deg)}
.cmd-trigger{
  border:none;border-radius:var(--r-pill);background:var(--surface-2);
  padding:6px 12px;gap:8px;display:inline-flex;align-items:center;font-size:.82rem;color:var(--txt-2);
}
.cmd-trigger:hover{background:var(--acc-soft);color:var(--acc)}
.cmd-hint{color:var(--txt-3);font-family:var(--ff-m);font-size:.68rem;border:1px solid var(--line-2);padding:1px 6px;border-radius:6px}
@media(max-width:768px){
  .site-header{padding-top:8px}
  .nav{max-width:none;border-radius:26px;height:52px;padding:0 8px;gap:6px}
}

/* ---------- 4. 首页 Hero ---------- */
.hero{margin-top:20px}
.hero-inner{min-height:56vh;padding:76px 0 52px;display:flex;flex-direction:column;justify-content:center}
.hero-kicker{font-size:.68rem;font-weight:600;letter-spacing:.16em;color:var(--acc);text-transform:uppercase}
.hero-title{font-size:clamp(2.3rem,6vw,4rem);line-height:1.05;letter-spacing:-.03em;font-weight:700;margin:.5em 0 .35em}
.hero-desc{font-size:1.12rem;line-height:1.72;color:var(--txt-2);max-width:42em;font-weight:400}
.hero-cta{margin-top:1.6em;display:flex;gap:12px;flex-wrap:wrap}
.hero-stats{display:flex;gap:2.4rem;margin-top:2.6rem}
.hero-stats .hs{display:flex;flex-direction:column;gap:2px}
.hero-stats .hs b{font-size:.98rem;font-weight:650}
.hero-stats .hs span{font-size:.62rem;letter-spacing:.12em;color:var(--txt-3);text-transform:uppercase}
.hero-scan{align-self:stretch;height:1px;background:linear-gradient(90deg,transparent,var(--line-2) 20%,var(--line-2) 80%,transparent);margin-top:3.4rem;position:relative}
.hero-scan::after{content:'';position:absolute;left:0;top:-2px;height:5px;width:80px;border-radius:4px;background:linear-gradient(90deg,transparent,var(--acc));filter:blur(1px);animation:scan 3.2s var(--ease) infinite}
@keyframes scan{0%,100%{transform:translateX(0);opacity:.4}50%{transform:translateX(calc(100vw - 120px));opacity:.9}}
@media(prefers-reduced-motion:reduce){.hero-scan::after{animation:none}}

/* ---------- 5. 区块节奏 ---------- */
.section,.home-section{padding:80px 0}
.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:32px}
.section-head h2,.section-title{font-size:1.5rem;font-weight:680;letter-spacing:-.02em}
.section-head .sh-kicker,.section-head .sh-more{font-size:.74rem;letter-spacing:.12em;color:var(--txt-3);text-transform:uppercase}
.section-head .sh-more{color:var(--acc);font-weight:550;letter-spacing:.02em;text-transform:none}
.section-head .sh-more:hover{color:var(--acc-strong)}
.section-head .wx-arrow-btn{align-self:center;flex-shrink:0}
@media(max-width:640px){.section-head .wx-arrow-btn{height:2.5em;min-width:auto;padding:0 .5em 0 1em;font-size:.82rem;gap:8px}}
.related-section,.entry-comments{padding-top:64px;margin-top:64px;border-top:1px solid var(--line)}

/* ---------- 6. 卡片（M3 tonal 表面 + Fluent 柔和高度） ---------- */
.card,.cat-card,.entry-card,.widget,.author-box,.comment-body,.entry-nav .en{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);
  transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),border-color var(--dur);
}
.card:hover,.cat-card:hover{border-color:var(--line-2);box-shadow:var(--e2);transform:translateY(-3px)}
.card-thumb{border-radius:calc(var(--r-card) - 4px);margin:-16px -16px 14px;overflow:hidden}
.card-thumb img{transition:transform .5s var(--ease)}
.card:hover .card-thumb img{transform:scale(1.04)}
.card-body{padding:16px}
.card-title,.post-title{font-size:1.06rem;font-weight:620;line-height:1.4;letter-spacing:-.015em}
.card-title a{transition:color var(--dur)}
.card-title a:hover{color:var(--acc)}
.card-byline{display:flex;align-items:center;gap:10px;margin:2px 0 10px}
.card-author{display:inline-flex;align-items:center;gap:7px;font-size:.8rem;font-weight:550;color:var(--txt-2);transition:color var(--dur)}
.card-author:hover{color:var(--acc)}
.card-author img{border-radius:50%;width:20px;height:20px;object-fit:cover}
.card-author-name{white-space:nowrap}
.card-excerpt,.post-excerpt{color:var(--txt-2);font-size:.9rem;line-height:1.7}
.card-meta,.post-meta{font-size:.78rem;color:var(--txt-3)}
.card-stats{display:flex;gap:12px;font-size:.76rem;color:var(--txt-3)}
.card-stats svg{width:14px;height:14px;stroke:currentColor;vertical-align:-2px}
.card-stats .cs{display:inline-flex;align-items:center;gap:4px}
.cat-card{text-align:center;padding:22px 16px}
.cat-card:hover{box-shadow:var(--e2);transform:translateY(-3px)}
.cat-card .cc-icon{color:var(--acc);margin-bottom:6px}

/* ---------- 7. 按钮 / 胶囊 / 标签 ---------- */
.btn{
  border:1px solid transparent;border-radius:var(--r-pill);padding:.66rem 1.5rem;
  font-size:.92rem;font-weight:560;letter-spacing:-.01em;cursor:pointer;
  display:inline-flex;align-items:center;gap:8px;
  transition:transform .15s var(--ease),box-shadow var(--dur),background var(--dur),color var(--dur);
}
.btn:active{transform:scale(.97)}
.btn-primary{background:var(--acc);color:var(--on-acc);box-shadow:var(--e1)}
.btn-primary:hover{background:var(--acc-strong);box-shadow:var(--e2)}
.btn-ghost{background:transparent;color:var(--txt-2);border-color:var(--line-2)}
.btn-ghost:hover{color:var(--txt-1);border-color:var(--txt-3)}
.btn-sm{padding:.32em .85em;font-size:.84rem}
.btn-danger{background:var(--danger);color:#fff}
.badge{border-radius:var(--r-pill);font-size:.62rem;font-weight:620;letter-spacing:.08em;padding:.22em .7em;text-transform:uppercase}
.tag{
  display:inline-flex;align-items:center;gap:6px;background:var(--acc-soft);color:var(--acc);
  border-radius:var(--r-pill);padding:.28em .85em;font-size:.8rem;font-weight:500;
  transition:background var(--dur),color var(--dur);
}
.tag:hover{background:var(--acc);color:var(--on-acc)}

/* 箭头按钮（Uiverse 风格：蓝描边幽灵钮 + 悬浮右移箭头） */
.wx-arrow-btn{
  position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:12px;
  background:transparent;color:var(--txt-1);border:2px solid var(--acc);border-radius:11px;
  height:2.9em;padding:0 .4em 0 1.4em;font-size:.9rem;font-weight:550;min-width:8.5em;
  overflow:hidden;transition:all .55s var(--ease);white-space:nowrap;
}
.wx-arrow-btn .text{display:inline-flex;align-items:center}
.wx-arrow-btn svg{width:1.5em;height:1.5em;flex:none;transition:transform .5s var(--ease),color .5s}
.wx-arrow-btn:hover{background:var(--acc);color:var(--on-acc)}
.wx-arrow-btn:hover svg{transform:translateX(5px)}

/* ---------- 8. 表单：M3 填充式 ---------- */
input[type=text],input[type=search],input[type=email],input[type=url],input[type=password],input[type=number],textarea,select{
  background:var(--surface-2);border:none;border-radius:var(--r-ctl);color:var(--txt-1);
  padding:11px 16px;font-size:.92rem;width:100%;
  transition:box-shadow var(--dur),background var(--dur);
}
input::placeholder,textarea::placeholder{color:var(--txt-3)}
input:focus,textarea:focus,select:focus{background:var(--surface-2);box-shadow:var(--ring)}

/* ---------- 8b. 编辑部搜索框（面板 / 抽屉通用） ---------- */
.wx-search-form{
  display:flex;align-items:center;gap:8px;position:relative;
  background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);
  padding:6px 6px 6px 16px;
  transition:border-color var(--dur),box-shadow var(--dur);
}
.wx-search-form:focus-within{border-color:var(--acc);box-shadow:var(--ring)}
.wx-search-form .wx-search-ico{color:var(--txt-3);display:inline-flex;flex:none}
.wx-search-form .wx-search-ico svg{width:18px;height:18px}
.wx-search-form .wx-search-input{
  flex:1;border:none;background:transparent;box-shadow:none;border-radius:0;
  padding:8px 0;font-size:.95rem;color:var(--txt-1);min-width:0;
}
.wx-search-form .wx-search-input:focus{background:transparent;box-shadow:none}
.wx-search-form .wx-search-submit{
  width:38px;height:38px;flex:none;border:none;border-radius:50%;
  background:var(--acc);color:var(--on-acc);cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;
  box-shadow:var(--e1);
  transition:background var(--dur),color var(--dur),transform .25s var(--ease),box-shadow var(--dur);
}
.wx-search-form .wx-search-submit:hover{background:var(--txt-1);color:var(--surface);transform:translateY(-1px);box-shadow:var(--e2)}
.wx-search-form .wx-search-submit:active{transform:scale(.92)}
.wx-search-form .wx-search-submit svg{width:16px;height:16px}

/* 抽屉内搜索 */
.drawer-search{margin-top:16px}
.drawer-search .wx-search-form{background:var(--surface-2)}

/* 搜索面板内的盒子 */
.search-box .wx-search-form{gap:8px}
.search-box .wx-search-form{font-size:1rem}
.search-box .wx-search-form .wx-search-input{font-size:1.02rem;padding:10px 0}
label{font-size:.84rem;color:var(--txt-2)}

/* ---------- 9. 搜索 / 命令面板（Acrylic 浮层） ---------- */
.search-box,.wx-palette-panel{
  background:var(--acrylic-strong);
  -webkit-backdrop-filter:blur(26px) saturate(140%);backdrop-filter:blur(26px) saturate(140%);
  border:1px solid var(--line);border-radius:20px;box-shadow:var(--e3);
}
.search-box input{border-radius:var(--r-pill);background:var(--surface-1)}
.wx-palette-input{border-radius:16px;background:var(--surface-1);margin:10px;padding:13px 16px}
.wx-palette-item{border-radius:12px;margin:4px 8px;padding:10px 12px;display:flex;gap:10px;align-items:center;font-size:.9rem}
.wx-palette-item.active,.wx-palette-item:hover{background:var(--acc-soft);color:var(--txt-1)}
.wx-palette-kbd{background:var(--surface-2);border:1px solid var(--line);border-radius:6px;padding:1px 6px;font-family:var(--ff-m);font-size:.68rem;color:var(--txt-3)}
.wx-palette-empty{color:var(--txt-3);padding:22px;text-align:center;font-size:.9rem}

/* ---------- 10. 文章正文 ---------- */
.entry-header{padding-top:20px}
.entry-title{font-size:clamp(1.8rem,4.2vw,2.7rem);line-height:1.18;letter-spacing:-.025em;font-weight:700;margin:.3em 0}
.entry-meta{font-size:.82rem;color:var(--txt-3);display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}
.entry-cats{display:flex;gap:8px;flex-wrap:wrap}
.entry-cats a{font-size:.72rem;font-weight:600;letter-spacing:.06em;color:var(--acc);text-transform:uppercase}
.entry-content{font-size:1.04rem;line-height:1.85;color:var(--txt-1)}
.entry-content p{margin:1.15em 0;color:var(--txt-1)}
.entry-content h2{font-size:1.5em;margin:1.8em 0 .6em;letter-spacing:-.02em}
.entry-content h3{font-size:1.2em;margin:1.5em 0 .5em}
.entry-content a:not([class]){color:var(--acc);border-bottom:1px solid color-mix(in srgb,var(--acc) 45%,transparent);transition:border-color var(--dur)}
.entry-content a:not([class]):hover{border-bottom-color:var(--acc)}
.entry-content pre,.entry-content code{font-family:var(--ff-m)}
.entry-content pre{border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface-1);box-shadow:inset 0 0 0 .5px var(--line)}
.entry-content code:not(pre code){background:var(--acc-soft);color:var(--acc-strong);padding:.14em .42em;border-radius:6px;font-size:.88em}
.entry-content img{border-radius:var(--r-card)}
blockquote{border-left:3px solid var(--acc);padding:.25em 0 .25em 1.3em;margin:1.6em 0;color:var(--txt-2);font-style:normal}
blockquote p{color:inherit}
.entry-content table{width:100%;border-collapse:separate;border-spacing:0;font-size:.9rem}
.entry-content th,.entry-content td{border-bottom:1px solid var(--line);padding:.6em .8em;text-align:left}
.entry-content th{font-weight:600;color:var(--txt-2)}

/* TOC */
.wx-toc{border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface-1);padding:6px}
.wx-toc-link{display:flex;align-items:center;gap:8px;padding:.44rem .8rem;border-radius:9px;font-size:.86rem;color:var(--txt-2);border-left:2px solid transparent}
.wx-toc-link:hover{background:var(--surface-2);color:var(--txt-1)}
.wx-toc-link.active{color:var(--acc);border-left-color:var(--acc);background:var(--acc-soft)}

/* ---------- 11. 分享 / 代码复制 / 字距 ---------- */
.wx-share a,.wx-copy-link,.wx-font-btn{border:none;border-radius:var(--r-pill);background:var(--surface-2);display:inline-flex;align-items:center;gap:6px;transition:all var(--dur) var(--ease)}
.wx-share a:hover,.wx-copy-link:hover{background:var(--acc-soft);color:var(--acc)}
.wx-share a svg{width:16px;height:16px}
.wx-font-btn{width:30px;height:30px;justify-content:center;font-family:var(--ff-m)}
.wx-font-btn.active{background:var(--acc);color:var(--on-acc)}

/* ---------- 12. 灯箱 / Toast / 阅读进度 ---------- */
.wx-lightbox{background:rgba(12,12,14,.82);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.wx-lightbox img{border-radius:var(--r-card);box-shadow:var(--e3)}
.wx-toast{background:var(--acrylic-strong);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:var(--r-pill);box-shadow:var(--e2);color:var(--txt-1)}
/* 成功提示：暗色 #232531 卡片 + 绿色对勾 */
.wx-toast.ok{
  background:#232531;color:#fff;border:none;border-radius:12px;
  padding:9px 16px 9px 12px;display:inline-flex;align-items:center;gap:10px;
  box-shadow:0 12px 32px rgba(0,0,0,.3);font-size:13px;
}
.wx-toast.ok::before{
  content:'✓';width:22px;height:22px;flex:none;display:inline-flex;align-items:center;justify-content:center;
  background:#2b9875;color:#fff;border-radius:7px;font-size:13px;font-weight:700;line-height:1;
}
.wx-toast.ok.show{opacity:1;transform:translateY(0)}
.wx-reading-progress{position:fixed;top:0;left:0;height:3px;background:var(--acc);z-index:9999;border-radius:0 3px 3px 0}

/* ---------- 13. 分页 / 发言空态 ---------- */
.pagination{display:flex;gap:8px;justify-content:center;padding:12px 0}
.pagination .page-numbers{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--surface-2);font-size:.86rem;color:var(--txt-2);transition:all var(--dur) var(--ease)}
.pagination .page-numbers:hover{background:var(--acc-soft);color:var(--acc)}
.pagination .page-numbers.current{background:var(--acc);color:var(--on-acc);box-shadow:var(--e1)}
.pagination .page-numbers.dots{background:transparent}
.no-results,.empty{color:var(--txt-3);text-align:center;padding:70px 20px;font-size:.95rem}
.wxl-none{color:var(--txt-3);padding:12px;font-size:.86rem}

/* ---------- 14. 评论区 ---------- */
.comment-body{padding:18px}
.comment-author .fn{font-weight:600}.comment-author .says{display:none}
.comment-meta a{color:var(--txt-3);font-size:.78rem}
.comment-content{font-size:.94rem;line-height:1.75}
.children{margin-left:1.4rem}

/* ---------- 15. 页脚 ---------- */
.site-footer{margin-top:88px;padding-top:64px;border-top:1px solid var(--line);background:transparent}
.footer-brand{font-weight:680;font-size:1.05rem;letter-spacing:-.02em}
.fa-logo{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.fa-avatar{width:42px;height:42px;border-radius:9px;object-fit:contain;flex:none}
.fa-name{font-weight:680;font-size:1.05rem;letter-spacing:-.02em;color:var(--txt-1)}
.fa-slogan{width:100%;font-size:.78rem;color:var(--txt-3);letter-spacing:.02em;margin-top:2px}
.footer-brand-sub{font-size:.6rem;letter-spacing:.16em;color:var(--txt-3);text-transform:uppercase}
.f-social a{width:36px;height:36px;border-radius:50%;background:var(--surface-2);display:inline-flex;align-items:center;justify-content:center;color:var(--txt-2);transition:all var(--dur) var(--ease)}
.f-social a:hover{background:var(--acc-soft);color:var(--acc);transform:translateY(-2px)}

/* ---- 圆形社交/分享图标 + 悬浮 tooltip（Uiverse 风格） ---- */
.f-ic,.sh-ic,.wx-copy-link{position:relative}
.f-ic::after,.sh-ic::after,.wx-copy-link::after{
  content:attr(data-tooltip);position:absolute;top:-40px;left:50%;transform:translateX(-50%) translateY(4px);
  background:var(--txt-1);color:var(--surface);font-size:12px;line-height:1;padding:6px 9px;border-radius:8px;
  white-space:nowrap;opacity:0;pointer-events:none;transition:all .22s var(--ease);z-index:20;box-shadow:var(--e2);
}
.f-ic::before,.sh-ic::before,.wx-copy-link::before{
  content:'';position:absolute;top:-11px;left:50%;width:8px;height:8px;transform:translateX(-50%) rotate(45deg);
  background:var(--txt-1);opacity:0;pointer-events:none;transition:all .22s var(--ease);z-index:19;border-radius:1px;
}
.f-ic:hover::after,.sh-ic:hover::after,.wx-copy-link:hover::after{opacity:1;transform:translateX(-50%) translateY(0)}
.f-ic:hover::before,.sh-ic:hover::before,.wx-copy-link:hover::before{opacity:1}
/* 品牌悬停色：由内联 --brand 变量驱动（见 macOS 点缀段） */
.sh-ic:hover{color:#fff;border-color:transparent}
.sh-ic:hover[aria-label="x"],.sh-ic:hover[aria-label="facebook"]{background:#111}
.sh-ic[data-tooltip="Telegram"]::after{background:#1da1f2}.sh-ic[data-tooltip="Telegram"]::before{background:#1da1f2}
.sh-ic[data-tooltip="X"]::after{background:#000}.sh-ic[data-tooltip="X"]::before{background:#000}
.sh-ic[data-tooltip="微博"]::after{background:#e6162d}.sh-ic[data-tooltip="微博"]::before{background:#e6162d}
.sh-ic[data-tooltip="Facebook"]::after{background:#1877f2}.sh-ic[data-tooltip="Facebook"]::before{background:#1877f2}
.wx-copy-link[data-tooltip]::after{background:var(--acc)}.wx-copy-link[data-tooltip]::before{background:var(--acc)}
.footer-beian,.footer-copy{font-size:.8rem;color:var(--txt-3)}
.footer-beian a{padding:0 4px}
.footer-beian a:first-child{border-right:1px solid var(--line-2);margin-right:4px}

/* ---------- 16. FAB 回到顶部 ---------- */
.back-top,.wx-back-top{
  width:52px;height:52px;border-radius:50%;position:fixed;bottom:26px;right:26px;z-index:800;
  background:var(--surface);border:1px solid var(--line);color:var(--txt-1);
  display:flex;align-items:center;justify-content:center;
  box-shadow:var(--e3);cursor:pointer;
  transition:transform .2s var(--ease),box-shadow .2s var(--ease),background .2s;
}
.back-top:hover,.wx-back-top:hover{transform:translateY(-4px);box-shadow:var(--e3);background:var(--surface);color:var(--acc)}
.back-top svg,.wx-back-top svg{width:20px;height:20px}

/* ---------- 16b. 无刷新 AJAX 加载动画（loading-wave） ---------- */
.wx-loader{
  position:fixed;inset:0;z-index:1200;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
  background:var(--mica);
  backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .22s var(--ease),visibility .22s;
}
.wx-loader.active{opacity:1;visibility:visible;pointer-events:all}
.wx-loader .loading-wave{width:80px;height:34px;display:flex;justify-content:center;align-items:flex-end}
.wx-loader .loading-bar{width:9px;height:8px;margin:0 3px;background:var(--acc);border-radius:5px;animation:loading-wave-animation 1s ease-in-out infinite}
.wx-loader .loading-bar:nth-child(2){animation-delay:.1s}
.wx-loader .loading-bar:nth-child(3){animation-delay:.2s}
.wx-loader .loading-bar:nth-child(4){animation-delay:.3s}
.wx-loader-txt{font-size:13px;color:var(--txt-3);letter-spacing:.02em;animation:wxLoaderFade 1s ease-in-out infinite}
@keyframes loading-wave-animation{0%{height:8px}50%{height:32px}100%{height:8px}}
@keyframes wxLoaderFade{0%,100%{opacity:.4}50%{opacity:1}}

/* ---------- 17. 状态 / 通知 / 维护 ---------- */
.notice-bar,.wph-notice{background:var(--acc-soft);color:var(--acc-strong)}
.page-title{font-size:1.9rem;font-weight:700;letter-spacing:-.025em}
.skip-link{position:absolute;left:-999px;top:0}

/* ============================================================
   19. 单篇文章精修（2.0.1）—— 文章页专项美化
   ============================================================ */

/* 文章整体：呼吸空隙 + 居中阅读列 */
.entry{padding-top:8px;max-width:880px;margin-inline:auto}

/* 文章头 */
.entry-head{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.entry-cats{display:flex;gap:8px;flex-wrap:wrap}
.entry-cats a{
  font-size:.68rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase;
  color:var(--acc);background:var(--acc-soft);
  padding:.32em .9em;border-radius:var(--r-pill);
  transition:background var(--dur),color var(--dur);
}
.entry-cats a:hover{background:var(--acc);color:var(--on-acc)}

.entry-title{
  font-size:clamp(1.9rem,4.6vw,3rem);line-height:1.15;letter-spacing:-.028em;
  font-weight:720;margin:0;max-width:20em;
}

/* Byline（作者头像 + 姓名 + 时间 · 阅读 · 评论） */
.entry-byline{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.88rem;color:var(--txt-3)}
.byline-avatar{display:inline-flex}
.byline-avatar img{width:34px;height:34px;border-radius:50%;display:block;border:2px solid var(--surface);box-shadow:var(--e1)}
.by-author{font-weight:600;color:var(--txt-2)}
.byline-dot,.pm-dot{color:var(--txt-3);opacity:.7;font-weight:700}
.post-meta{font-size:.86rem;color:var(--txt-3);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.post-meta a:not(.btn){color:var(--txt-3);transition:color var(--dur)}
.post-meta a:not(.btn):hover{color:var(--acc)}

/* 统计行（阅读时长 / 浏览 / 更新） */
.entry-stats{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px;padding-top:0;border-top:none}
.entry-stats .wx-read-time,.entry-stats .wx-views,.entry-stats .wx-updated{
  display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:var(--txt-2);
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-pill);
  padding:.42em .9em;box-shadow:var(--e1);font-weight:500;
}
.entry-stats svg{width:15px;height:15px;color:var(--acc)}

/* 特色图 */
.entry-hero{margin:8px 0 0;border-radius:var(--r-card);overflow:hidden;border:1px solid var(--line);box-shadow:var(--e2);background:var(--surface)}
.entry-hero img{display:block;width:100%;height:auto;border-radius:var(--r-card)}

/* 正文阅读列：窄化 + 居中，黄金排版 */
.entry-content{
  max-width:min(100%,760px);
  margin:36px auto 0;
  font-size:1.05rem;line-height:1.9;color:var(--txt-1);letter-spacing:.002em;
}
.entry-content > *:where(:not(h1,h2,h3,h4,h5,pre,img,figure,blockquote,ul,ol,table)){
  max-width:100%;
}
.entry-content p{margin:0 0 1.25em}
.entry-content a:not([class]){color:var(--acc);font-weight:500;border-bottom:1px solid color-mix(in srgb,var(--acc) 40%,transparent);transition:border-color var(--dur),color var(--dur)}
.entry-content a:not([class]):hover{border-bottom-color:var(--acc);color:var(--acc-strong)}
.entry-content h2{font-size:1.6em;margin:1.9em 0 .6em;letter-spacing:-.022em}
.entry-content h3{font-size:1.28em;margin:1.6em 0 .5em;letter-spacing:-.015em;color:var(--txt-1)}
.entry-content h4{font-size:1.08em;margin:1.4em 0 .4em}
.entry-content ul,.entry-content ol{margin:0 0 1.3em;padding-left:1.4em}
.entry-content li{margin:.35em 0;line-height:1.8}
.entry-content li::marker{color:var(--acc)}
.entry-content img{border-radius:var(--r-sm,12px);height:auto}
.entry-content figure{margin:1.6em 0}
.entry-content figcaption{font-size:.82rem;color:var(--txt-3);text-align:center;margin-top:.6em}
.entry-content blockquote{
  margin:1.8em 0;padding:1em 0 1em 1.3em;border-left:3px solid var(--acc);
  color:var(--txt-2);font-size:1.04em;background:linear-gradient(90deg,var(--acc-soft),transparent 60%);
  border-radius:0 var(--r-sm,12px) var(--r-sm,12px) 0;
}
.entry-content blockquote p{margin-bottom:.6em}
.entry-content hr{border:none;border-top:1px solid var(--line);margin:2.2em 0}
.entry-content .aligncenter{display:block;margin-left:auto;margin-right:auto}
.entry-content .alignleft{float:left;margin:.4em 1.2em 1em 0}
.entry-content .alignright{float:right;margin:.4em 0 1em 1.2em}

/* 分页 */
.page-links{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:2em auto;justify-content:center}
.page-links .post-page-numbers,.page-links span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--surface-2);color:var(--txt-2);font-size:.86rem}
.page-links span{background:var(--acc);color:var(--on-acc)}

/* 操作行（喜欢 / 收藏） */
.wx-actions{display:flex;gap:12px;justify-content:center;margin:36px auto 8px;padding:0}
.wx-act-btn{
  display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);
  background:var(--surface);color:var(--txt-2);border-radius:var(--r-pill);
  padding:.7em 1.6em;font-size:.9rem;font-weight:530;cursor:pointer;
  box-shadow:var(--e1);transition:all var(--dur) var(--ease);
}
.wx-act-btn svg{width:17px;height:17px}
.wx-act-btn:hover{color:var(--acc);border-color:var(--acc);transform:translateY(-2px);box-shadow:var(--e2)}
.wx-act-btn.active{background:var(--acc);color:var(--on-acc);border-color:var(--acc)}
/* 收藏按钮（书签态）：金色 + 弹出光点动画 */
#wx-bookmark{position:relative;overflow:visible}
#wx-bookmark svg{transition:fill .25s var(--ease),transform .3s var(--ease),color .25s;transform-origin:top}
#wx-bookmark.on{color:#b8860b;border-color:rgba(255,193,7,.6)}
#wx-bookmark.on svg{fill:#ffc107;color:#ffc107;animation:wxBmJump .3s var(--ease)}
#wx-bookmark.on::after{
  content:'';position:absolute;left:50%;top:50%;width:10px;height:10px;border-radius:50%;pointer-events:none;
  box-shadow:0 34px 0 -4px #ffc107,34px 0 0 -4px #ffc107,0 -34px 0 -4px #ffc107,-34px 0 0 -4px #ffc107,
    -24px 24px 0 -4px #ffc107,-24px -24px 0 -4px #ffc107,24px -24px 0 -4px #ffc107,24px 24px 0 -4px #ffc107;
  animation:wxBmBurst .35s cubic-bezier(.175,.885,.32,1.275) forwards;
  z-index:5;
}
@keyframes wxBmJump{50%{transform:scaleY(.6)}100%{transform:scaleY(1)}}
@keyframes wxBmBurst{from{transform:scale(0);opacity:0}40%{opacity:.9}to{transform:scale(.8);opacity:0}}

/* 文章脚 */
.entry-foot{margin-top:44px;padding-top:8px}
.entry-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.entry-tags .tag{font-size:.8rem;padding:.34em .95em}

/* 分享行 */
.wx-share{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.wx-share-label{font-size:.78rem;letter-spacing:.1em;color:var(--txt-3);text-transform:uppercase;margin-right:4px}
.wx-share a,.wx-copy-link{
  width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;
  background:var(--surface);border:1px solid var(--line);color:var(--txt-2);
  transition:all var(--dur) var(--ease);
}
.wx-share a:hover,.wx-copy-link:hover{color:var(--acc);border-color:var(--acc);transform:translateY(-2px)}
.wx-share svg,.wx-copy-link svg{width:17px;height:17px}

/* 作者卡片 */
.author-box{
  display:flex;gap:16px;align-items:flex-start;padding:20px;margin-bottom:28px;
  border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);box-shadow:var(--e1);
}
.author-box .ab-avatar img{width:56px;height:56px;border-radius:50%;display:block}
.ab-body{align-self:center}
.ab-name{display:inline-flex;align-items:center;gap:8px;font-size:1rem;font-weight:650;margin-bottom:4px}
.ab-bio{font-size:.88rem;color:var(--txt-2);line-height:1.6;margin:0}

/* 上下篇文章导航 */
.entry-nav{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:8px 0 12px}
.entry-nav .en{
  display:flex;flex-direction:column;gap:6px;padding:18px 20px;min-height:86px;
  border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);
  transition:all var(--dur) var(--ease);position:relative;overflow:hidden;
}
.entry-nav .en:hover{border-color:var(--acc);box-shadow:var(--e2);transform:translateY(-3px)}
.entry-nav .en-prev::before,.entry-nav .en-next::after{
  content:'';position:absolute;top:0;bottom:0;width:4px;background:linear-gradient(var(--acc),transparent);opacity:0;transition:opacity var(--dur)}
.entry-nav .en-prev::before{left:0}
.entry-nav .en-next::after{right:0}
.entry-nav .en:hover::before,.entry-nav .en:hover::after{opacity:1}
.entry-nav .en-label{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--txt-3)}
.entry-nav .en-title{font-size:.98rem;font-weight:600;line-height:1.4;color:var(--txt-1)}
.entry-nav .en-next{text-align:right}

/* 相关文章 / 评论 顶部 hairline */
.related-section,.entry-comments{margin-top:64px;padding-top:56px;border-top:1px solid var(--line)}

/* 相关文章 · 紧凑小长方形条目 */
.related-grid{--cols:2;gap:12px}
.rp-item{
  display:flex;align-items:center;gap:14px;padding:10px;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);
  transition:transform var(--dur) var(--ease),border-color var(--dur),box-shadow var(--dur);
  overflow:hidden;
}
.rp-item:hover{border-color:var(--acc);box-shadow:var(--e2);transform:translateY(-2px)}
.rp-thumb{flex:none;width:76px;height:64px;border-radius:10px;overflow:hidden;display:block;background:var(--acc-soft)}
.rp-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.rp-body{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}
.rp-cat{font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;color:var(--acc);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rp-title{margin:0;font-size:.9rem;font-weight:600;line-height:1.4}
.rp-title a{color:var(--txt-1)}
.rp-title a:hover{color:var(--acc)}
.rp-meta{font-size:.74rem;color:var(--txt-3)}
@media(max-width:900px){.related-grid{--cols:2!important}}
@media(max-width:640px){.related-grid{--cols:1!important}.rp-thumb{width:84px;height:72px}}

/* 评论区精修 */
.entry-comments{margin-bottom:20px}
.comments-title{font-size:1.4rem;font-weight:680;letter-spacing:-.02em}
.comment-list{padding:0;margin:0;list-style:none}
.comment-body{
  padding:20px 22px;margin-bottom:12px;
  border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);box-shadow:var(--e1);
}
.comment-body .comment-author{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.comment-body .comment-author img{border-radius:50%;width:40px;height:40px}
.comment-body .fn{font-size:.95rem;font-weight:650}
.comment-meta{font-size:.78rem;color:var(--txt-3);margin-left:auto}
.comment-content{font-size:.94rem;line-height:1.75;color:var(--txt-1)}
.children{margin-left:1.6rem;margin-top:12px;list-style:none;padding:0}
.comment-respond{margin-top:28px}
.comment-reply-title{font-size:1.3rem;font-weight:680}
.comment-form label{display:block;margin:12px 0 6px;font-size:.84rem;color:var(--txt-2)}
.comment-form input[type=submit]{margin-top:6px}

/* ============================================================
   15b. 盒式评论表单（统一卡片，置于评论区上方）
   ============================================================ */
.comment-box{
  margin-bottom:32px;padding:24px;
  border:1px solid var(--line);border-radius:var(--r-card);
  background:var(--surface);box-shadow:var(--e1);
}
.comment-box-head{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:20px;
}
.comment-box .comment-reply-title{margin:0;font-size:1.3rem;font-weight:680}
.comment-cancel-link{font-size:.9rem;color:var(--txt-3);transition:color var(--dur)}
.comment-cancel-link:hover{color:var(--txt-1)}

/* 登录态提示条 */
.cf-login-bar{
  display:flex;align-items:center;justify-content:space-between;
  padding:12px 16px;margin-bottom:18px;
  background:var(--surface-2);border-radius:var(--r-sm);
  font-size:.9rem;color:var(--txt-2);
}
.cf-login-actions{display:flex;gap:16px}
.cf-login-actions a{color:var(--acc);transition:color var(--dur)}
.cf-login-actions a:hover{color:var(--acc-strong)}

.cf-form{display:flex;flex-direction:column;gap:16px}

/* 昵称 / 邮箱 / 网站 字段组（并排在上方） */
.cf-meta{display:flex;gap:12px}
.cf-field{flex:1;position:relative}
.cf-input{
  width:100%;height:42px;padding:0 14px;
  border:1px solid var(--line);border-radius:var(--r-ctl);
  background:var(--surface-2);font-size:.9rem;
  transition:border-color var(--dur),box-shadow var(--dur),background var(--dur);
}
.cf-input:focus{
  border-color:var(--acc);outline:none;
  box-shadow:var(--ring);background:var(--surface-2);
}
.cf-req{position:absolute;top:12px;right:14px;color:var(--danger);font-size:.95rem}

/* 评论编辑器 */
.cf-editor{position:relative}
.cf-textarea{
  width:100%;min-height:120px;padding:14px;
  border:1px solid var(--line);border-radius:var(--r-ctl);
  background:var(--surface-2);font-size:.94rem;line-height:1.6;resize:vertical;
  transition:border-color var(--dur),box-shadow var(--dur),background var(--dur);
}
.cf-textarea:focus{
  border-color:var(--acc);outline:none;
  box-shadow:var(--ring);background:var(--surface-2);
}
.cf-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* 底部：左侧保存复选框 + 右下角圆形评论按钮 */
.cf-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.cf-cookie{
  display:inline-flex;align-items:center;gap:9px;
  font-size:.84rem;color:var(--txt-2);cursor:pointer;margin:0;
}
.cf-cookie input[type=checkbox]{
  width:16px;height:16px;flex:none;margin:0;
  accent-color:var(--acc);
}
.cf-cookie-check{width:16px;height:16px;flex:none;display:none}
.cf-submit{
  display:inline-flex;align-items:center;gap:6px;
  height:40px;padding:0 18px;border:none;border-radius:var(--r-pill);
  background:var(--acc);color:var(--on-acc);font-size:.9rem;font-weight:550;
  cursor:pointer;box-shadow:var(--e1);
  transition:background var(--dur),color var(--dur),transform var(--ease),box-shadow var(--dur);
}
.cf-submit:hover{background:var(--acc-strong);transform:translateY(-2px);box-shadow:var(--e2)}
.cf-submit:active{transform:scale(.94)}
.cf-submit svg{width:16px;height:16px}

@media(max-width:680px){
  .entry-nav{grid-template-columns:1fr}
  .entry-nav .en-next{text-align:left}
  .entry-content{margin-top:24px;font-size:1rem}
  .cf-meta{flex-direction:column}
  .comment-box{padding:18px}
  .cf-foot{justify-content:space-between}
  .cf-submit{padding:0 14px;height:38px}
}

/* ---------- 18. 动效降级 ---------- */
@media (prefers-reduced-motion:reduce){
   *,*::before,*::after{animation:none!important;transition:none!important}
  .card,.cat-card{transform:none!important}
}
/* 入场显现（若启用） */
[data-reveal]{opacity:0;transform:translateY(18px)}
[data-reveal].revealed,[data-reveal].in{opacity:1;transform:none}

/* ============================================================
   20. 友人帐 · 友情链接页
   ============================================================ */
.friends-page{max-width:960px;margin-inline:auto;padding-top:16px}
.fx-kicker{font-size:.68rem;font-weight:650;letter-spacing:.16em;text-transform:uppercase;color:var(--acc);background:var(--acc-soft);padding:.32em .9em;border-radius:var(--r-pill)}
.fx-lead{font-size:1.08rem;line-height:1.7;color:var(--txt-2);max-width:40em;margin:0}
.fx-summary{margin-top:10px;display:inline-flex;align-items:baseline;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-pill);padding:.5em 1.1em;box-shadow:var(--e1)}
.fx-sum-num{font-size:1.5rem;font-weight:720;color:var(--acc);font-family:var(--ff-m)}
.fx-sum-label{font-size:.74rem;letter-spacing:.08em;color:var(--txt-3);text-transform:uppercase}

/* 申请友链提示（申请块下方） */
.friends-page .entry-content{max-width:100%}
.friends-page .entry-content p{color:var(--txt-2)}

/* 分区 */
.fx-section{margin-top:44px}
.fx-section-head{display:flex;align-items:center;gap:10px;margin-bottom:18px}
.fx-section-title{font-size:1.14rem;font-weight:650;letter-spacing:-.015em;margin:0}
.fx-section-count{font-size:.72rem;font-weight:600;color:var(--acc);background:var(--acc-soft);border-radius:var(--r-pill);padding:.14em .7em}

/* 友链卡片栅格 */
.fx-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.fx-link{
  display:flex;align-items:center;gap:14px;padding:16px;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);
  transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),border-color var(--dur);
  height:100%;
}
.fx-link:hover{border-color:var(--acc);box-shadow:var(--e2);transform:translateY(-3px)}
.fx-avatar{
  flex:none;width:52px;height:52px;border-radius:14px;overflow:hidden;display:grid;place-items:center;
  background:var(--acc-soft);box-shadow:var(--e1);
}
.fx-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.fx-initial{font-size:1.4rem;font-weight:720;color:var(--acc);font-family:var(--ff-b)}
.fx-info{min-width:0;display:flex;flex-direction:column;gap:3px}
.fx-name{font-size:.96rem;font-weight:620;color:var(--txt-1);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color var(--dur)}
.fx-link:hover .fx-name{color:var(--acc)}
.fx-desc{font-size:.82rem;color:var(--txt-3);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* 空态 */
.fx-empty{padding:60px 20px;text-align:center;color:var(--txt-3);background:var(--surface);border:1px dashed var(--line-2);border-radius:var(--r-card);margin-top:32px}
.fx-empty p{margin:0;font-size:.92rem}

/* 申请友链 */
.fx-apply{
  margin-top:48px;padding:24px;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--e2);
}

/* 交换友链 */
.fx-exchange{
  margin-top:48px;padding:26px;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--e2);
}
.fx-exchange-head h3{font-size:1.2rem;font-weight:680;margin:0}
.fx-exchange-head p{margin:.4em 0 0;font-size:.92rem;line-height:1.65;color:var(--txt-2);max-width:48em}
.fx-exchange-wrap{margin-top:22px}
.fx-exchange-ours{
  display:flex;align-items:center;gap:16px;
  padding:16px 18px;border:1px solid var(--line);border-radius:var(--r-card);
  background:var(--bg-soft,var(--surface));
}
.fx-exchange-avatar{
  flex:none;width:56px;height:56px;border-radius:16px;overflow:hidden;display:grid;place-items:center;
  background:var(--acc-soft);box-shadow:var(--e1);
}
.fx-exchange-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.fx-exchange-info{min-width:0;display:flex;flex-direction:column;gap:4px}
.fx-exchange-name{font-size:1.02rem;font-weight:660;color:var(--txt-1);letter-spacing:-.01em}
.fx-exchange-desc{margin:0;font-size:.86rem;line-height:1.55;color:var(--txt-2)}
.fx-exchange-url{display:inline-flex;align-items:center;gap:4px;font-size:.84rem;color:var(--acc);word-break:break-all}
.fx-exchange-url:hover{text-decoration:underline}
.fx-exchange-code{margin-top:16px}
.fx-exchange-code-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.fx-exchange-code-title{font-size:.88rem;font-weight:540;color:var(--txt-2)}
.fx-exchange-preview{
  margin:0;padding:16px;overflow:auto;max-height:240px;
  background:var(--code-bg,var(--bg-strong,var(--surface)));border:1px solid var(--line-2);border-radius:var(--r-card);
}
.fx-exchange-preview code{
  font-family:var(--ff-code,var(--ff-mono,Consolas,Menlo,monospace));font-size:.82rem;line-height:1.7;color:var(--txt-1);white-space:pre;
}

/* 交换友链 · 可复制字段框 */
.fx-exchange-hint{margin:20px 0 12px;font-size:.88rem;color:var(--txt-2)}
.fx-fields-copy{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.fx-field{
  display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:center;
  padding:12px 14px;text-align:left;cursor:pointer;appearance:none;border:1px solid var(--line);border-radius:var(--r-card);
  background:var(--bg-soft,var(--surface));font:inherit;color:inherit;
  transition:border-color var(--dur),box-shadow var(--dur),transform var(--dur);
}
.fx-field:hover{border-color:var(--acc);box-shadow:var(--e2);transform:translateY(-1px)}
.fx-field:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.fx-field-label{font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--txt-3);grid-column:1/2}
.fx-field-value{grid-column:1/-1;font-size:.92rem;line-height:1.5;color:var(--txt-1);word-break:break-all;min-width:0}
.fx-field-copy{grid-column:2/3;grid-row:1/2;align-self:start;font-size:.72rem;color:var(--acc);background:var(--acc-soft);padding:2px 8px;border-radius:20px;font-weight:600}
.fx-field:hover .fx-field-copy{background:var(--acc);color:var(--on-acc)}
@media(max-width:640px){.fx-fields-copy{grid-template-columns:1fr}}
.fx-apply h3{margin:0 0 6px;font-size:1.15rem;font-weight:680}
.fx-apply p{margin:0;color:var(--txt-2);font-size:.92rem;line-height:1.65}

@media(max-width:560px){
  .fx-grid{grid-template-columns:1fr}
}

/* ============================================================
   21. 首页补强（标签云）
   ============================================================ */
.tag-cloud{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.tag-cloud .tag{font-size:.9rem;padding:.5em .9em;box-shadow:var(--e1)}
.tag-cloud .tc-count{background:var(--acc);color:var(--on-acc);border-radius:var(--r-pill);font-size:.68rem;font-weight:600;padding:.06em .5em;min-width:1.3em;text-align:center;transition:background var(--dur),color var(--dur)}
.tag-cloud .tag:hover .tc-count{background:var(--on-acc);color:var(--acc)}

/* ============================================================
   22. 文章脚部去杂乱 + 友人帐申请表单
   ============================================================ */
.end-bar{
  display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  padding:22px 0 26px;border-top:1px solid var(--line);
}
.entry-tags{margin:0}
.entry-foot .entry-tags .tag{font-size:.8rem;padding:.34em .95em}
.exwxshare,.wx-share{margin:0}
.entry-foot .wx-share .wx-share-label{display:none}
.entry-foot .entry-nav{margin-top:6px}

/* 友人帐申请表单 */
.fx-apply{
  margin-top:44px;padding:26px;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--e2);
}
.fx-apply-head h3{font-size:1.2rem;font-weight:680;margin:0}
.fx-apply-head p{margin:.4em 0 0;font-size:.92rem;line-height:1.65;color:var(--txt-2);max-width:48em}
.fx-form{margin-top:22px}
.fx-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fx-field-full{grid-column:1/-1}
.fx-field label{display:block;margin-bottom:7px;font-size:.85rem;font-weight:540;color:var(--txt-2)}
.fx-field label em{color:var(--danger);font-style:normal}
.fx-field input[type=text],.fx-field input[type=email],.fx-field input[type=url],.fx-field textarea{width:100%}
.fx-field textarea{resize:vertical;min-height:96px}
.fx-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;opacity:0}
.fx-form-msg{border-radius:var(--r-ctl);padding:12px 16px;font-size:.9rem;margin-top:16px;line-height:1.6}
.fx-form-msg.ok{background:var(--acc-soft);color:var(--acc-strong)}
.fx-form-msg.err{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}
.fx-form-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:20px}
.fx-tip{font-size:.8rem;color:var(--txt-3);line-height:1.5}

/* 文章页纵向节奏精简 */
.entry-stats{margin-top:6px}
.related-section,.entry-comments{margin-top:52px;padding-top:48px}

/* ============================================================
   23. 全面移动端适配
   ============================================================ */
@media(max-width:900px){
  .fx-form-grid{grid-template-columns:1fr}
  .fx-field-full{grid-column:auto}
}
@media(max-width:768px){
  .hero-inner{min-height:44vh;padding:56px 0 40px}
  .hero-stats{gap:1.6rem}
  .section,.home-section{padding:56px 0}
  .grid,[class*="grid"]{--cols:2!important}
  .cats-grid{grid-template-columns:repeat(2,1fr)}
  .related-section .grid,[class*="related"] .grid{--cols:2!important}
  .fx-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}
  .end-bar{justify-content:flex-start}
  .entry-head{gap:14px}
}
@media(max-width:640px){
  .hero-title{font-size:clamp(2rem,9vw,2.6rem)}
  .hero-desc{font-size:1rem}
  .hero-actions .btn{width:100%;justify-content:center}
  .grid,[class*="grid"]{--cols:2!important}
  .cats-grid{grid-template-columns:1fr}
  .entry-nav{grid-template-columns:1fr}
  .entry-nav .en-next{text-align:left}
  .author-box{flex-direction:column;align-items:flex-start;gap:12px}
  .footer-grid{grid-template-columns:1fr 1fr}
  .fx-apply{padding:20px}
}
@media(max-width:480px){
  .grid,[class*="grid"]{--cols:1!important}
  .hero-stats{flex-wrap:wrap;gap:1rem}
  .footer-grid{grid-template-columns:1fr}
  .fx-summary{margin-top:8px}
  .fx-form-foot{flex-direction:column;align-items:stretch}
  .fx-form-foot .btn{width:100%;justify-content:center}
}

/* ============================================================
   24. 作者资料浮层（点击头像 / 用户名）+ 官方风范打磨
   ============================================================ */

/* 触发按钮 */
.wx-author-trigger{
  display:inline-flex;align-items:center;gap:8px;padding:2px 6px 2px 2px;
  border:1px solid transparent;border-radius:var(--r-pill);background:transparent;color:var(--txt-2);
  cursor:pointer;transition:border-color var(--dur),background var(--dur),color var(--dur);
}
.wx-author-trigger:hover,.wx-author-trigger:focus-visible{border-color:var(--line-2);background:var(--surface);color:var(--txt-1)}
.wx-author-trigger .byline-avatar img{width:34px;height:34px;border-radius:50%;display:block;border:2px solid var(--surface);box-shadow:var(--e1);transition:transform var(--dur) var(--ease)}
.wx-author-trigger:hover .byline-avatar img{transform:scale(1.06)}
.wx-author-trigger .by-author{font-weight:600;color:var(--txt-2);transition:color var(--dur)}
.wx-author-trigger:hover .by-author{color:var(--acc)}
.byline-chev{display:inline-flex;color:var(--txt-3);opacity:.7;transition:transform var(--dur) var(--ease)}
.wx-author-trigger[aria-expanded="true"] .byline-chev,.wx-author-trigger:hover .byline-chev{transform:rotate(180deg)}

/* 浮层卡片 */
.wx-author-pop{
  position:absolute;z-index:1200;max-width:min(300px,92vw);
  background:var(--acrylic-strong);
  -webkit-backdrop-filter:blur(24px) saturate(150%);backdrop-filter:blur(24px) saturate(150%);
  border:1px solid var(--line);border-radius:18px;box-shadow:var(--e3);
  padding:18px;font-size:.9rem;
  animation:wxPop .18s var(--ease);
}
@keyframes wxPop{from{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}
.wap-caret{position:absolute;top:-6px;width:12px;height:12px;background:var(--acrylic-strong);border-left:1px solid var(--line);border-top:1px solid var(--line);transform:rotate(45deg);border-radius:2px}
.wap-head{display:flex;align-items:center;gap:12px}
.wap-avatar{flex:none;width:56px;height:56px;border-radius:50%;overflow:hidden;background:var(--acc-soft);display:grid;place-items:center;box-shadow:var(--e1)}
.wap-avatar img{width:100%;height:100%;object-fit:cover}
.wap-initial{font-size:1.4rem;font-weight:720;color:var(--acc)}
.wap-id{min-width:0}
.wap-name{display:block;font-size:1.02rem;font-weight:650;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wap-posts{display:block;font-size:.76rem;color:var(--txt-3);margin-top:2px}
.wap-bio{margin:12px 0 0;font-size:.84rem;line-height:1.6;color:var(--txt-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.wap-actions{display:flex;gap:8px;margin-top:14px}
.wap-actions .btn{flex:1;justify-content:center;padding:.55em .6em;font-size:.85rem}
.wap-actions .btn svg{flex:none}
.wap-site{background:var(--surface-1)}

@media(prefers-reduced-motion:reduce){.wx-author-pop{animation:none}}

/* 官方网站风范：Hero 打磨 */
.hero{position:relative;overflow:hidden}
.hero-inner{align-items:center;text-align:center}
.hero-kicker{display:inline-flex;gap:6px;align-items:center;text-transform:uppercase}
.hero-desc{margin-inline:auto}
.hero-actions{justify-content:center}
.hero-stats{justify-content:center}
.hero-stats .hs{align-items:center}
.hero-stats .hs + .hs{border-left:1px solid var(--line);padding-left:2.4rem}
.hero-bg.grid{background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:44px 44px;opacity:.5;mask-image:radial-gradient(ellipse 80% 60% at 50% 20%,#000 30%,transparent 75%)}
[data-theme="dark"] .hero-bg.grid{opacity:.22}

/* 官方风范：首页区块标题留白 + 分区一致 */
.section-head{margin-bottom:34px}
.section-head .ph-kicker{color:var(--acc);font-weight:600}

/* 官方风范：页脚细节 */
.site-footer .footer-grid{gap:36px}
.widget .widget-title{font-size:.95rem;letter-spacing:.06em;text-transform:uppercase;color:var(--txt-2);margin-bottom:14px}

/* 侧边栏 / 抽屉搜索 —— 全部统一为「胶囊输入框 + 右侧圆形提交按钮」
   兼容：主题自带 .wx-search-form（searchform.php）、
   Gutenberg 搜索块 .wp-block-search、经典 .search-form */
.wx-search-form,.search-form,.wp-block-search{
  position:relative;display:flex;align-items:center;gap:8px;
  background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);
  padding:4px 4px 4px 16px;max-width:100%;
  transition:border-color var(--dur),box-shadow var(--dur);
}
.wx-search-form:focus-within,.search-form:focus-within,.wp-block-search:focus-within{border-color:var(--acc);box-shadow:var(--ring)}
.wp-block-search__inside-form{gap:8px}
.search-form [type=search],.wp-block-search__input{
  flex:1;min-width:0;border:none;background:transparent;box-shadow:none;border-radius:0;
  padding:8px 0;font-size:.95rem;color:var(--txt-1);
}
.search-form [type=search]:focus,.wp-block-search__input:focus{background:transparent;box-shadow:none}
/* 提交按钮：一律为右侧圆形图标按钮 */
.wp-block-search__button,.search-form .search-submit,.searchsubmit{
  width:38px;height:38px;flex:none;margin:0;padding:0;border:none;border-radius:50%;
  background:var(--acc);color:var(--on-acc);cursor:pointer;position:relative;
  display:inline-flex;align-items:center;justify-content:center;
  box-shadow:var(--e1);transition:background var(--dur),color var(--dur),transform .25s var(--ease),box-shadow var(--dur);
  font-size:0;/* 隐藏文字，仅显示放大镜图标 */
}
.wp-block-search__button.has-icon svg{width:16px;height:16px}
/* 无图标按钮：用 CSS 绘制放大镜兜底 */
.wp-block-search__button:not(.has-icon)::before,.search-form .search-submit::before,.searchsubmit::before,
.wp-block-search__button:not(.has-icon)::after,.search-form .search-submit::after,.searchsubmit::after{content:'';position:absolute}
.wp-block-search__button:not(.has-icon)::before,.search-form .search-submit::before,.searchsubmit::before{
  width:12px;height:12px;border-radius:50%;border:2px solid currentColor;left:8px;top:9px;
}
.wp-block-search__button:not(.has-icon)::after,.search-form .search-submit::after,.searchsubmit::after{
  width:7px;height:2px;background:currentColor;transform:rotate(45deg);right:7px;bottom:9px;
}
.wp-block-search__button:hover,.search-form .search-submit:hover,.searchsubmit:hover{background:var(--txt-1);color:var(--surface);transform:translateY(-1px);box-shadow:var(--e2)}
.wp-block-search__button:active,.search-form .search-submit:active,.searchsubmit:active{transform:scale(.92)}
@media(max-width:768px){
  .wp-block-search__button,.search-form .search-submit,.searchsubmit{font-size:0}
}

/* ============================================================
   25. 搜索面板头 + 抽屉套装 + 移动端响应（胶囊导航）
   ============================================================ */

/* 全局搜索面板顶部 */
.search-box-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}

/* 抽屉（汉堡菜单）覆盖为统一令牌，确保手机端菜单正常 */
.drawer{background:var(--surface);border-right:1px solid var(--line)}
.drawer-head{border-bottom:1px solid var(--line)}
.drawer-brand{display:flex;align-items:center;gap:12px}
.drawer-brand .nav-logo{width:40px;height:40px}
.drawer-brand-txt{display:flex;flex-direction:column;min-width:0;gap:1px}
.drawer-brand-txt .nav-brand-char{font-weight:650;font-size:1.02rem}
.drawer-brand-txt .nav-brand-slogan{font-size:.66rem;color:var(--txt-3);border-left:none;padding-left:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:180px}
.drawer-menu{list-style:none;margin:10px 0 0;padding:0}
.drawer-menu > li{margin:2px 0}
.drawer-menu a{
  display:flex;align-items:center;gap:10px;padding:.82rem .5rem;
  font-size:.97rem;color:var(--txt-2);border-bottom:1px solid var(--line);font-weight:550;border-radius:6px;
  transition:color var(--dur),background var(--dur);
}
.drawer-menu a:hover{color:var(--acc);background:var(--surface-2)}
.drawer-menu .current-menu-item>a,.drawer-menu .current_page_item>a{color:var(--acc);font-weight:700}
.drawer-menu .sub-menu{padding-left:1rem}
.drawer-search{margin-top:16px}

/* 移动端响应：导航项（含「友人帐」）自动收入汉堡抽屉，杜绝挤压竖排 */
@media(max-width:768px){
  .nav-center{display:none}
  .nav-burger{display:flex}
  .nav-right{gap:4px;flex-shrink:0;flex-wrap:nowrap}
  .nav-brand{min-width:0;flex-shrink:1;overflow:hidden}
  .nav{height:52px;gap:6px}
}
@media(max-width:480px){
  .nav-brand-slogan{display:none}
  .cmd-trigger .cmd-hint{display:none}
  .cmd-trigger{width:38px;padding:0;justify-content:center}
  .cmd-trigger svg{margin:0}
  .nav-right .icon-btn,.nav-right .nav-burger{width:36px;height:36px}
}

/* ============================================================
   26. Apple macOS 纯黑高对比点缀（克制使用）
   ============================================================ */
.site-header .nav{border-color:var(--line-2)}
.wx-arrow-btn{border-color:var(--txt-1);color:var(--txt-1)}
.wx-arrow-btn:hover{background:var(--txt-1);border-color:var(--txt-1);color:var(--surface)}
.wx-arrow-btn:hover svg{transform:translateX(5px)}
.back-top,.wx-back-top{border-color:var(--txt-1)}
.back-top:hover,.wx-back-top:hover{border-color:var(--txt-1);background:var(--txt-1);color:var(--surface)}
.icon-btn:hover{border-color:var(--txt-1)}
.search-panel .search-box{border-color:var(--line-2)}
.wx-search-form .wx-search-submit{border:none}
/* 社交图标：品牌色悬浮（由 --brand 内联变量驱动） */
.f-social .f-ic:hover{background:var(--brand,var(--txt-1));color:#fff;border-color:transparent}
.f-ic:hover::after,.f-ic:hover::before{background:var(--brand,var(--txt-1));color:#fff}
.tag-cloud .tag:hover{border-color:var(--txt-1)}

/* ============================================================
   27. 页脚（合规 / 举报 / 客服矩阵）
   ============================================================ */
.footer-legal{
  margin-top:40px;padding-top:22px;border-top:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap;
  font-size:.85rem;color:var(--txt-3);
}
.footer-legal a{display:inline-flex;align-items:center;gap:8px;color:var(--txt-3);transition:color var(--dur)}
.footer-legal a:hover{color:var(--txt-1)}
.footer-legal img{height:16px;width:auto;object-fit:contain}
.footer-copyright{
  margin:18px auto 0;text-align:center;font-size:.84rem;color:var(--txt-3);
  padding-bottom:2px;
}
.footer-compliance{
  margin-top:20px;padding-top:18px;border-top:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;min-height:30px;
}
.footer-compliance a{display:inline-flex;align-items:center;opacity:.82;transition:opacity var(--dur),transform var(--dur)}
.footer-compliance a:hover{opacity:1;transform:translateY(-1px)}
.footer-compliance img{height:18px;max-height:22px;width:auto;object-fit:contain;filter:grayscale(.2)}
[data-theme=dark] .footer-compliance .w3c-logo{filter:invert(.92)}
.footer-report{
  margin-top:22px;padding-top:18px;border-top:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;text-align:center;
}
.footer-report .report-text{font-size:.8rem;line-height:1.8;color:var(--txt-3);max-width:880px;margin:0}
.footer-report .report-text a{color:var(--acc-strong);text-decoration:underline;text-underline-offset:3px;margin:0 4px}
.footer-report .report-text a:hover{color:var(--acc)}
.footer-report.report-center img{height:auto;max-width:200px;width:100%}
.footer-wechat{
  margin-top:26px;padding-top:20px;border-top:1px solid var(--line);
  display:flex;align-items:flex-start;justify-content:center;gap:44px;flex-wrap:wrap;
}
.footer-wechat .qr-item{display:flex;flex-direction:column;align-items:center;gap:10px}
.footer-wechat .qr-item img{width:96px;height:96px;border-radius:12px;border:1px solid var(--line);object-fit:cover;transition:transform var(--dur) var(--ease)}
.footer-wechat .qr-item img:hover{transform:scale(1.04)}
.footer-wechat .qr-label{font-size:.82rem;color:var(--txt-3);text-align:center}
.footer-wechat .qr-label span{color:var(--txt-2);font-weight:550}
@media(max-width:560px){
  .footer-wechat{gap:28px}
  .footer-wechat .qr-item img{width:82px;height:82px}
  .footer-legal{font-size:.8rem;gap:14px}
  .footer-compliance{gap:14px}
}

/* ============================================================
   液态玻璃（HarmonyOS 湿感液态玻璃 · 明暗自适应）
   重模糊让背景色彩晕染进玻璃；上亮下暗渐变描边；内部漫反射高光；卡片体积浮起。
   ============================================================ */
[data-glass="liquid"]{
  /* 亮色：奶白玻璃（约 64% 实度，保证可读性） */
  --acrylic:rgba(255,255,255,.64);
  --acrylic-strong:rgba(255,255,255,.78);
  --mica:rgba(247,248,250,.58);
  --glass-rim-blur:40px;
  /* 内部漫反射与体积：顶上 1px 浅光，下方轻微暖底 */
  --glass-rim:inset 0 1px 1px rgba(255,255,255,.55),
              inset 1px 0 0 rgba(255,255,255,.12),
              inset -1px 0 0 rgba(255,255,255,.12),
              inset 0 -1px 0 rgba(190,205,235,.28);
}
html[data-theme="dark"] body[data-glass="liquid"]{
  /* 暗色：深炭半透明，让背景暖色晕染透出 */
  --acrylic:rgba(20,22,28,.46);
  --acrylic-strong:rgba(24,26,32,.58);
  --mica:rgba(16,18,24,.52);
  --glass-rim-blur:46px;
  --glass-rim:inset 0 1px 1px rgba(255,255,255,.16),
              inset 1px 0 0 rgba(255,255,255,.05),
              inset -1px 0 0 rgba(255,255,255,.05),
              inset 0 -1px 0 rgba(0,0,0,.28);
}

/* 重模糊 + 高饱和，背景色彩沿玻璃面晕染（"湿"感来源） */
[data-glass="liquid"] .site-header .nav,
[data-glass="liquid"] .nav-menu ul,
[data-glass="liquid"] .search-box,
[data-glass="liquid"] .wx-palette-panel,
[data-glass="liquid"] .wx-author-pop,
[data-glass="liquid"] .drawer,
[data-glass="liquid"] .wx-loader,
[data-glass="liquid"] .wx-lightbox,
[data-glass="liquid"] .wx-toast,
[data-glass="liquid"] .wx-settings-toggle,
[data-glass="liquid"] .wx-fs-panel,
[data-glass="liquid"] .wx-toc,
[data-glass="liquid"] .comment-box{
  -webkit-backdrop-filter:saturate(190%) blur(var(--glass-rim-blur)) !important;
  backdrop-filter:saturate(190%) blur(var(--glass-rim-blur)) !important;
}

/* 液态玻璃表面：漫反射高光 + 上亮下暗渐变描边 + 体积投影
   注意：不在此处强制 position:relative —— 浮动面板（.wx-settings-toggle /
   .wx-toc / .drawer / .nav-menu ul 等）各有 fixed/absolute 定位，被覆盖会
   导致弹层掉落页面底部、元素出现大间隙。仅导航胶囊加相对定位以承载浮光。 */
[data-glass="liquid"] .site-header .nav{
  position:relative;
}
[data-glass="liquid"] .site-header .nav,
[data-glass="liquid"] .nav-menu ul,
[data-glass="liquid"] .search-box,
[data-glass="liquid"] .wx-palette-panel,
[data-glass="liquid"] .wx-author-pop,
[data-glass="liquid"] .wx-toast,
[data-glass="liquid"] .drawer,
[data-glass="liquid"] .wx-settings-toggle,
[data-glass="liquid"] .wx-fs-panel,
[data-glass="liquid"] .wx-toc,
[data-glass="liquid"] .comment-box{
  border-style:solid;border-width:1px;
  border-color:rgba(255,255,255,.16) rgba(255,255,255,.14);
  border-top-color:rgba(255,255,255,.48);   /* 上缘高光 */
  border-bottom-color:rgba(205,218,242,.34);/* 下缘暖折射 */
  box-shadow:var(--glass-rim),0 10px 30px -10px rgba(30,40,80,.20) !important;
}
html[data-theme="dark"] body[data-glass="liquid"] .site-header .nav,
html[data-theme="dark"] body[data-glass="liquid"] .nav-menu ul,
html[data-theme="dark"] body[data-glass="liquid"] .search-box,
html[data-theme="dark"] body[data-glass="liquid"] .wx-palette-panel,
html[data-theme="dark"] body[data-glass="liquid"] .wx-author-pop,
html[data-theme="dark"] body[data-glass="liquid"] .wx-toast,
html[data-theme="dark"] body[data-glass="liquid"] .drawer,
html[data-theme="dark"] body[data-glass="liquid"] .wx-settings-toggle,
html[data-theme="dark"] body[data-glass="liquid"] .wx-fs-panel,
html[data-theme="dark"] body[data-glass="liquid"] .wx-toc,
html[data-theme="dark"] body[data-glass="liquid"] .comment-box{
  border-color:rgba(255,255,255,.05) rgba(255,255,255,.04);
  border-top-color:rgba(255,255,255,.16);
  border-bottom-color:rgba(0,0,0,.30);
  box-shadow:var(--glass-rim),0 14px 40px -12px rgba(0,0,0,.5) !important;
}
[data-glass="liquid"] .wx-lightbox{background:rgba(8,8,12,.46)}

/* 液态玻璃中，原先不透明实底面板改用半透明浑浊底，让背景色彩晕染进玻璃 */
[data-glass="liquid"] .wx-settings-toggle,
[data-glass="liquid"] .wx-fs-panel,
[data-glass="liquid"] .wx-toc,
[data-glass="liquid"] .comment-box{
  background:var(--mica);
}
html[data-theme="dark"] body[data-glass="liquid"] .wx-settings-toggle,
html[data-theme="dark"] body[data-glass="liquid"] .wx-fs-panel,
html[data-theme="dark"] body[data-glass="liquid"] .wx-toc,
html[data-theme="dark"] body[data-glass="liquid"] .comment-box{
  background:var(--mica);
}

/* 导航胶囊：保留浮起投影级 + 微弱流动光泽（灵动但克制） */
[data-glass="liquid"] .site-header .nav{
  box-shadow:var(--e2),var(--glass-rim) !important;
  border-top-color:rgba(255,255,255,.5);
}
[data-glass="liquid"] .site-header .nav::after{
  content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:3;
  background:linear-gradient(115deg,transparent 34%,rgba(255,255,255,.14) 50%,transparent 66%);
  background-size:250% 100%;background-position:140% 0;
  animation:wxGlassGlide 9s ease-in-out 1.5s infinite;
}
html[data-theme="dark"] body[data-glass="liquid"] .site-header .nav::after{
  background:linear-gradient(115deg,transparent 34%,rgba(180,205,255,.06) 50%,transparent 66%);
}
@keyframes wxGlassGlide{
  0%{background-position:140% 0}
  60%{background-position:-70% 0}
  100%{background-position:140% 0}
}
@media(prefers-reduced-motion:reduce){
  [data-glass="liquid"] .site-header .nav::after{animation:none;background-image:none}
}

/* ============================================================
   导航「外观设置」弹层（玻璃质感切换）
   ============================================================ */
.wx-settings-toggle{
  position:fixed; left:50%; bottom:0;
  transform:translate(-50%,112%);
  width:min(340px,calc(100vw - 32px));
  z-index:1300 !important; /* ensure above the mask */
  background:var(--acrylic);
  -webkit-backdrop-filter:saturate(160%) blur(22px);
  backdrop-filter:saturate(160%) blur(22px);
  border:1px solid var(--line); border-radius:18px;
  padding:14px; z-index:1200; box-shadow:var(--e3);
  transition:transform .28s cubic-bezier(.2,.7,.2,1);
}
.wx-settings-toggle.open{transform:translate(-50%,-22px)}
.wx-settings-head{display:flex;align-items:center;justify-content:space-between;font-weight:700;font-size:.92rem;color:var(--txt-1)}
.wx-settings-close{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;cursor:pointer;background:var(--surface);border:0;color:var(--txt-2);transition:background var(--dur),color var(--dur)}
.wx-settings-close:hover{background:var(--acc-soft);color:var(--acc)}
.wx-settings-meta{margin:8px 0 10px;font-size:.78rem;color:var(--txt-3)}
.wx-glass-opts{display:grid;gap:8px}
.wx-glass-opt{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--txt-1);font:inherit;font-size:.86rem;cursor:pointer;text-align:left;transition:border-color var(--dur),background var(--dur),transform var(--dur)}
.wx-glass-opt:hover{transform:translateY(-1px);border-color:var(--acc)}
.wx-glass-opt.active{border-color:var(--acc);background:var(--acc-soft)}
.g-dot{width:18px;height:18px;border-radius:50%;flex:none;box-shadow:inset 0 0 0 1px rgba(127,127,127,.25),inset 0 2px 6px rgba(255,255,255,.28)}
.g-dot.frosted{background:linear-gradient(135deg,#ffffff,#c9cdd6)}
.g-dot.liquid{background:radial-gradient(circle at 30% 25%,#ffffff 0,#8fb8ff 45%,#4a7bff 100%);box-shadow:inset 0 0 8px rgba(255,255,255,.6)}
.g-tag{margin-left:auto;font-style:normal;font-size:.66rem;font-weight:700;padding:2px 8px;border-radius:20px;background:radial-gradient(circle at top,#eef3ff,#bcd0ff);color:#2b55c5}
.wx-settings-mask{position:fixed;inset:0;background:rgba(8,8,12,.32);opacity:0;pointer-events:none;transition:opacity var(--dur);z-index:1190}
.wx-settings-mask.open{opacity:1;pointer-events:auto}
@media(max-width:640px){.wx-settings-toggle.open{transform:translate(-50%,-14px)}}

/* ============================================================
   26. 修复：侧边栏 / 经典搜索组件图标显示
   经典 `.search-form` 的提交按钮是 `<button>`（伪元素可画放大镜），
   但部分宿主输出 `<input type=submit>`——input 不支持 ::before/::after，
   会只剩一个空白圆钮。这里用 SVG data-URI 背景做兜底放大镜，
   button 与 input 均生效，并保持圆钮在主色上始终可见。
   ============================================================ */
.search-form .search-submit,.searchform .searchsubmit,.wp-block-search__button:not(.has-icon){
  color:transparent!important;text-indent:-9999px;font-size:0!important;
  background-color:var(--acc)!important;
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M21 21l-4.35-4.35'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:center;background-size:16px 16px;
}
.search-form .search-submit:hover,.searchform .searchsubmit:hover,.wp-block-search__button:not(.has-icon):hover{
  background-color:color-mix(in srgb,var(--acc) 82%,var(--txt-1))!important;
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M21 21l-4.35-4.35'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:center;background-size:16px 16px;
}
/* 主题自带搜索框的图标按钮（内联 SVG）不受影响，保持原生写法 */
.wx-search-form .wx-search-submit{background-image:none;text-indent:0;color:inherit}
/* 经典输入框最小宽度，避免窄边栏挤压 */
.search-form [type=search],.wp-block-search__input{min-width:0}
.sidebar .search-form,.sidebar .wp-block-search,.sidebar .wx-search-form{min-width:0;width:100%}

/* ============================================================
   27. 全局自适应安全兜底（所有页面）
   保证图片/表格/表单/栅格在任意窄屏不溢出，补齐各页响应式短板。
   ============================================================ */
img{max-width:100%;height:auto}
.entry-content img,.entry-content iframe,.entry-content video{max-width:100%}
table{overflow-x:auto;-webkit-overflow-scrolling:touch;display:block;width:100%}
input,textarea,select{max-width:100%}
.entry-content,.entry-body,.layout-main{min-width:0}

/* ============================================================
   28. 友人帐 响应式细化（mobile-first 打磨）
   ============================================================ */
@media(max-width:640px){
  .fx-exchange{padding:20px}
  .fx-exchange-code-head{flex-direction:column;align-items:flex-start}
  .fx-grid{gap:12px}
  .fx-section-title{font-size:1.05rem}
  .fx-summary{gap:4px}
}
@media(max-width:420px){
  .fx-exchange-ours{flex-direction:column;align-items:flex-start}
  .fx-exchange-avatar{width:64px;height:64px}
  .fx-apply{padding:18px}
  .fx-form-grid{gap:12px}
  .fx-card .fx-avatar{width:42px;height:42px}
}

/* ============================================================
   29. 液态玻璃 显示效果优化
   - 不支持 backdrop-filter 的浏览器回退为高不透明玻璃，避免文字看不清
   - 玻璃面的模糊/底色加入平滑过渡，切换主题与滚动时不跳变
   - 交互玻璃面（卡片/浮窗）增强顶部漫反射高光，"液体"体积感更足
   ============================================================ */
@supports not ((backdrop-filter:blur(0px)) or (-webkit-backdrop-filter:blur(0px))){
  [data-glass="liquid"]{--acrylic:rgba(250,250,252,.96);--acrylic-strong:#ffffff;--mica:rgba(245,246,248,.94)}
  html[data-theme="dark"] body[data-glass="liquid"]{--acrylic:rgba(16,18,24,.94);--acrylic-strong:#1b1e26;--mica:rgba(14,16,22,.94)}
}
/* 玻璃面过渡：模糊变化柔化衔接 */
[data-glass="liquid"] .site-header .nav,
[data-glass="liquid"] .nav-menu ul,
[data-glass="liquid"] .search-box,
[data-glass="liquid"] .wx-palette-panel,
[data-glass="liquid"] .wx-author-pop,
[data-glass="liquid"] .drawer,
[data-glass="liquid"] .wx-toast,
[data-glass="liquid"] .wx-settings-toggle,
[data-glass="liquid"] .wx-fs-panel,
[data-glass="liquid"] .wx-toc,
[data-glass="liquid"] .comment-box{
  transition:background-color var(--dur),border-color var(--dur),box-shadow var(--dur),
    backdrop-filter .45s var(--ease),-webkit-backdrop-filter .45s var(--ease);
}
/* 顶缘漫反射高光更柔和 → 强化"湿润玻璃"体积感 */
[data-glass="liquid"] .fx-link,
[data-glass="liquid"] .card,
[data-glass="liquid"] .fx-field{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5),var(--e1);
}
[data-glass="liquid"] .fx-link:hover,
[data-glass="liquid"] .card:hover{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 12px 28px -12px rgba(40,60,120,.28);
}

/* ============================================================
   31. 首页文章列表 · 显示效果优化
   更高卡片纵深感、缩略图应力更足、标题/摘要有序分层，hover 更有质感。
   ============================================================ */
.post-grid.grid{column-gap:22px;row-gap:26px}
.post-grid .card{
  position:relative;display:flex;flex-direction:column;
  transition:transform .34s var(--ease),box-shadow .34s var(--ease),border-color var(--dur);
}
.post-grid .card:hover{
  transform:translateY(-5px);
  border-color:color-mix(in srgb,var(--acc) 55%,var(--line));
  box-shadow:0 18px 40px -14px color-mix(in srgb,var(--acc) 26%,rgba(20,30,60,.18));
}
.post-grid .card-thumb{border-radius:calc(var(--r-card) - 3px);margin:-16px -16px 14px;overflow:hidden;position:relative}
.post-grid .card-thumb::after{
  content:'';position:absolute;inset:0;pointer-events:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4),inset 0 -22px 34px -22px rgba(10,20,50,.35);
}
.post-grid .card-thumb img{aspect-ratio:16/10;height:auto}
.post-grid .card-cats{margin-bottom:8px}
.post-grid .card-title{margin:0 0 8px}
.post-grid .card-title a{
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.post-grid .card-excerpt{
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  margin-bottom:14px;
}
.post-grid .card-byline{margin:2px 0 10px}
.post-grid .card-foot{margin-top:auto}
/* 缩略图轻微放大入画 */
.post-grid .card-thumb img{transition:transform .5s var(--ease)}
.post-grid .card:hover .card-thumb img{transform:scale(1.045)}

/* ============================================================
   32. 液态玻璃 · 追光效果
   指针划过玻璃面时，浮现一道随鼠标移动的径向"追光"，
   强化 HarmonyOS 湿润玻璃的镜面反射细节。
   追光层由 JS 注入 .liquid-glow（pointer-events:none，不透字）。
   ============================================================ */
.liquid-glow{
  position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:0;
  opacity:0;
  background:radial-gradient(clamp(150px,32vw,300px) circle at var(--sx,50%) var(--sy,40%),rgba(255,255,255,.24),rgba(255,255,255,0) 62%);
  transition:opacity .35s var(--ease);
}
.liquid-glow.is-on{opacity:1}
html[data-theme="dark"] .liquid-glow{
  background:radial-gradient(clamp(150px,32vw,300px) circle at var(--sx,50%) var(--sy,40%),rgba(160,195,255,.18),rgba(160,195,255,0) 60%);
}
[data-glass="liquid"] .site-header .nav{position:relative}
@media(prefers-reduced-motion:reduce){.liquid-glow{opacity:0!important}}

/* ============================================================
   33. 友人帐友链卡片 · LOGO 左显 + 4/2 列自适应
   - 电脑端 4×N；平板 3 列；手机端 1×N
   - 卡片左侧为友链 LOGO（有 logo 图则显示，否则显示首字占位）
   - 友链站点截图不再显示在列表卡片中，改到外部链接跳转提示页左侧
   - 已移除原「悬浮预览截图」
   ============================================================ */
.fx-section-head{flex-wrap:wrap}
/* ============================================================
   33. 友人帐友链卡片 · LOGO 左显 + 全设备自适应栅格
   - 桌面 ≥1100：4×N    大平板 701–1100：3×N
   - 小平板 481–700：2×N  手机 ≤480：1×N
   - 单一断点系统，避免旧规则互相覆盖导致不同设备显示错乱
   - 手机端卡片纵向信息可换行（最多 2 行），无横向溢出
   ============================================================ */
.fx-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;list-style:none;margin:0;padding:0}
.fx-link{display:flex;align-items:center;gap:12px;padding:14px;min-width:0;height:100%}
.fx-avatar{
  flex:none;width:52px;height:52px;border-radius:13px;overflow:hidden;
  display:grid;place-items:center;background:var(--acc-soft);box-shadow:var(--e1);
}
.fx-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.fx-initial{font-size:1.15rem;font-weight:720;color:var(--acc);font-family:var(--ff-b)}
.fx-info{min-width:0;display:flex;flex-direction:column;gap:4px}
.fx-name{font-size:.9rem;font-weight:640;color:var(--txt-1);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color var(--dur);max-width:100%}
.fx-link:hover .fx-name{color:var(--acc)}
@media(max-width:1100px) and (min-width:701px){.fx-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px) and (min-width:481px){.fx-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media(max-width:480px){
  .fx-grid{grid-template-columns:1fr;gap:10px}
  .fx-section-head{margin-bottom:12px}
  .fx-section{margin-top:34px}
  .fx-link{
    padding:12px 14px;gap:12px;border-radius:14px;
    align-items:center;
  }
  .fx-link:hover{transform:none;box-shadow:var(--e1)}
  .fx-avatar{width:48px;height:48px;border-radius:12px;flex:none}
  .fx-initial{font-size:1.05rem}
  .fx-name{
    font-size:.9rem;white-space:normal;overflow:visible;text-overflow:clip;
    line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
  }
  .fx-desc{-webkit-line-clamp:2}
  .fx-info{gap:3px;justify-content:center;flex:1 1 auto;min-width:0}
}
@media(max-width:360px){.fx-desc{display:none}.fx-link{gap:10px}.fx-avatar{width:44px;height:44px}}

/* ============================================================
   33A. 友链代码块 · 手机上强制换行，杜绝横向滚动
   （pre 仍为滚动容器；pre-wrap 仅影响显示，复制得到原文不变）
   ============================================================ */
.fx-exchange-preview code{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}

/* ============================================================
   33B. 友人帐 / 正文 · 横向溢出终极防护（适配所有手机）
   任意宽子元素（表格、图片、iframe、长地址、长文本）均被约束或换行，
   确保页面在任何机型上绝不横向溢出。
   ============================================================ */
.friends-page,
.friends-page .layout-main,
.friends-page .entry-content,
.friends-page .fx-grid,
.friends-page .fx-exchange,
.friends-page .fx-exchange-wrap,
.friends-page .fx-apply,
.friends-page .fx-section,
.friends-page .fx-summary{min-width:0;max-width:100%}
.friends-page .entry-content img,
.friends-page .entry-content iframe,
.friends-page .entry-content video,
.friends-page .fx-exchange-avatar img,
.friends-page .fx-avatar img{max-width:100%;height:auto}
.friends-page .entry-content table,
.friends-page .fx-exchange table{display:block;width:100%;max-width:100%;overflow-x:auto}
.friends-page .entry-content>*{max-width:100%}
.friends-page a,
.friends-page .fx-exchange-url,
.friends-page .fx-field-value,
.friends-page .fx-desc,
.friends-page .fx-summary-short{overflow-wrap:anywhere;word-break:break-word}

/* ============================================================
   34. 站外链接跳转提示页（复用主题模板，随全站主题/暗色自动适配）
   ============================================================ */
.jump-page .layout-main{
  display:flex;flex-direction:column;align-items:center;
  padding:clamp(24px,6vw,56px) 0 clamp(44px,8vw,80px);
}
.jump-card{
  width:100%;max-width:760px;
  background:var(--surface);border:1px solid var(--line);border-radius:24px;
  box-shadow:var(--e2);padding:clamp(26px,5vw,46px) clamp(20px,5vw,48px);
  text-align:center;position:relative;overflow:hidden;
}
.jump-card::before{display:none}
.jump-mono{
  font-family:var(--ff-mono,ui-monospace,monospace);font-size:11px;
  letter-spacing:.2em;text-transform:uppercase;color:var(--txt-3);margin-bottom:10px;
}
.jump-title{font-size:clamp(1.15rem,3vw,1.45rem);font-weight:700;margin:0 0 12px;color:var(--txt-1)}
.jump-snippet{font-size:.95rem;line-height:1.9;color:var(--txt-2);max-width:46em;margin-inline:auto}
.jump-snippet a{color:var(--acc);text-decoration:underline}
.jump-snippet b,.jump-snippet strong{font-weight:650;color:var(--txt-1)}
.jump-host{
  margin:18px auto 0;display:inline-flex;align-items:center;gap:6px;
  font-family:var(--ff-mono,ui-monospace,monospace);font-size:12.5px;color:var(--txt-3);
  word-break:break-all;background:var(--bg-soft,var(--surface));
  border:1px solid var(--line);border-radius:var(--r-pill,999px);padding:6px 14px;
}
.jump-actions{display:flex;gap:12px;margin-top:26px;justify-content:center;flex-wrap:wrap}
.jump-foot{margin-top:22px;font-size:.78rem;color:var(--txt-3)}

/* 有友链截图时：截图在左，文案在右（手机端隐藏截图） */
.jump-card.has-shot{
  display:grid;grid-template-columns:320px 1fr;gap:0 34px;text-align:left;align-items:start;
}
.jump-card.has-shot .jump-body{min-width:0;display:flex;flex-direction:column}
.jump-shot img{
  display:block;width:100%;max-height:420px;object-fit:cover;object-position:top;
  border-radius:16px;border:1px solid var(--line-2);background:var(--bg-soft,var(--surface));
}
.jump-card.has-shot .jump-snippet{margin-inline:0}
.jump-card.has-shot .jump-actions{justify-content:flex-start}
@keyframes wxJumpIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.jump-page .jump-card{animation:wxJumpIn .36s var(--ease, ease) both}
@media(max-width:860px){
  .jump-card.has-shot{grid-template-columns:1fr;text-align:center}
  .jump-shot{display:none}
  .jump-card.has-shot .jump-actions{justify-content:center}
}
@media(max-width:560px){
  .jump-actions .btn{width:100%;justify-content:center}
}