/*
Theme Name: 文游站
Theme URI: https://example.com/
Author: 文芳
Description: 文游模拟器资源站主题。内置「文游下载 / 经验攻略 / 常见问题 / 文游许愿」四大板块，全部功能写在主题里，不需要安装任何插件。支持三套配色一键切换。
Version: 1.0.1
Requires at least: 5.8
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: wenyu-station
Tags: custom-colors, custom-menu, featured-images, translation-ready
*/

/* ============================================================
   1. 配色变量
   ============================================================ */

:root{
  --r:14px;
  /* ── 奶油少女（默认 · 浅色） ── */
  --bg:#fff7fb; --panel:#ffffff; --panel-2:#fdeef5; --panel-3:#f8dce8;
  --topbar:rgba(255,247,251,.88);
  --line:rgba(96,62,84,.1); --line-2:rgba(96,62,84,.19);
  --tx:#3d2b36; --tx-2:#715a68; --tx-3:#a08996;
  --ac:#f0568c; --ac-2:#d02e63; --ac-soft:rgba(240,86,140,.1); --ac-line:rgba(240,86,140,.34);
  --warn:#c8842a; --run:#8a63d2; --ok:#2aa48c;
  --s-wait-bg:rgba(200,132,42,.13); --s-run-bg:rgba(138,99,210,.13); --s-done-bg:rgba(42,164,140,.13);
  --cv-a:linear-gradient(135deg,#ffd6e6,#ffbcd6);
  --cv-b:linear-gradient(135deg,#e0d6ff,#ccbcff);
  --cv-c:linear-gradient(135deg,#c9efe4,#aee3d4);
  --cv-d:linear-gradient(135deg,#ffe4bd,#ffd19b);
  --cv-tx:rgba(125,70,105,.28); --on-cover:rgba(255,255,255,.75);
  --on-ac:#ffffff;
  --sb:#f3d4e1; --sb-h:#e7bed1;
  --mask:rgba(74,44,62,.36);
  --err:#d92b4a; --err-bg:rgba(217,43,74,.07);
}
/* ── 樱花暗夜 ── */
html[data-theme="sakura"]{
  --bg:#150d17; --panel:#1e1422; --panel-2:#281b2d; --panel-3:#362538;
  --topbar:rgba(21,13,23,.86);
  --line:rgba(255,255,255,.075); --line-2:rgba(255,255,255,.14);
  --tx:#f7eef8; --tx-2:#c6b0ca; --tx-3:#8d7794;
  --ac:#ff86ab; --ac-2:#ffb6ca; --ac-soft:rgba(255,134,171,.14); --ac-line:rgba(255,134,171,.44);
  --warn:#ffc978; --run:#c084fc; --ok:#7ee7c7;
  --s-wait-bg:rgba(255,201,120,.15); --s-run-bg:rgba(192,132,252,.18); --s-done-bg:rgba(126,231,199,.15);
  --cv-a:linear-gradient(135deg,#3d1f39,#241428);
  --cv-b:linear-gradient(135deg,#302046,#1d1630);
  --cv-c:linear-gradient(135deg,#1f3d3a,#142320);
  --cv-d:linear-gradient(135deg,#3e2b1e,#251912);
  --cv-tx:rgba(255,255,255,.18); --on-cover:rgba(0,0,0,.42);
  --on-ac:#07131c;
  --sb:#3a2440; --sb-h:#4d3155;
  --mask:rgba(4,6,9,.72);
  --err:#f87171; --err-bg:rgba(248,113,113,.08);
}
/* ── 霓虹二次元 ── */
html[data-theme="neon"]{
  --bg:#0a0a1c; --panel:#141231; --panel-2:#1c1943; --panel-3:#292455;
  --topbar:rgba(10,10,28,.86);
  --line:rgba(255,255,255,.085); --line-2:rgba(255,255,255,.16);
  --tx:#efedff; --tx-2:#b4afe4; --tx-3:#7f7ab3;
  --ac:#8b7cf6; --ac-2:#c9bcff; --ac-soft:rgba(139,124,246,.17); --ac-line:rgba(139,124,246,.5);
  --warn:#ffd166; --run:#39c5f3; --ok:#4ade80;
  --s-wait-bg:rgba(255,209,102,.16); --s-run-bg:rgba(57,197,243,.18); --s-done-bg:rgba(74,222,128,.16);
  --cv-a:linear-gradient(135deg,#1e235c,#111430);
  --cv-b:linear-gradient(135deg,#2b1e58,#181233);
  --cv-c:linear-gradient(135deg,#0f3a48,#0d1d29);
  --cv-d:linear-gradient(135deg,#3c3012,#1f1910);
  --cv-tx:rgba(255,255,255,.18); --on-cover:rgba(0,0,0,.45);
  --on-ac:#07131c;
  --sb:#252052; --sb-h:#332c69;
  --mask:rgba(4,7,20,.74);
  --err:#f87171; --err-bg:rgba(248,113,113,.08);
}

/* ============================================================
   2. 基础
   ============================================================ */

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:var(--bg);color:var(--tx);
  font:400 14px/1.7 "Microsoft YaHei","PingFang SC","Hiragino Sans GB",system-ui,-apple-system,sans-serif;
  -webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
h1,h2,h3,h4,p,ul,ol{margin:0;padding:0}
ul,ol{list-style:none}
input,textarea,select{font:inherit}

::-webkit-scrollbar{width:9px;height:9px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--sb);border-radius:5px}
::-webkit-scrollbar-thumb:hover{background:var(--sb-h)}

.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}

.wrap{max-width:1180px;margin:0 auto;padding:0 30px}

/* ============================================================
   3. 顶栏
   ============================================================ */

.top{position:sticky;top:0;z-index:60;height:62px;display:flex;align-items:center;gap:12px;
  padding:0 30px;border-bottom:1px solid var(--line);background:var(--topbar);backdrop-filter:blur(14px)}
.logo{display:flex;align-items:center;gap:9px;font-size:15.5px;font-weight:800;letter-spacing:-.2px;
  cursor:pointer;white-space:nowrap}
.logo i{width:24px;height:24px;border-radius:7px;background:linear-gradient(135deg,var(--ac),var(--run));
  display:grid;place-items:center;font-size:12px;font-weight:800;color:var(--on-ac);font-style:normal}
.nav{display:flex;align-items:center;gap:2px;margin-left:12px}
.nav a{padding:8px 13px;border-radius:9px;font-size:13.5px;color:var(--tx-2);white-space:nowrap;transition:.16s}
.nav a:hover{background:var(--panel-2);color:var(--tx)}
.nav a.on{background:var(--ac-soft);color:var(--ac-2);font-weight:600}
.top-r{margin-left:auto;display:flex;align-items:center;gap:10px}

.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 15px;border-radius:9px;font-size:13px;
  border:1px solid var(--line-2);color:var(--tx);transition:.16s;white-space:nowrap;cursor:pointer}
.btn:hover{border-color:var(--ac-line);background:var(--panel-2)}
.btn.pri{background:var(--ac);border-color:var(--ac);color:var(--on-ac);font-weight:600}
.btn.pri:hover{background:var(--ac-2);border-color:var(--ac-2);color:var(--on-ac)}

.pal{display:flex;align-items:center;gap:7px;padding:5px 11px;border-radius:999px;
  border:1px solid var(--line);background:var(--panel)}
.pal em{font-size:11.5px;color:var(--tx-3);font-style:normal;margin-right:1px}
.pal button{width:16px;height:16px;border-radius:50%;border:1.5px solid transparent;transition:.16s}
.pal button:hover{transform:scale(1.16)}
.pal button.on{border-color:var(--tx);box-shadow:0 0 0 2px var(--ac-soft);transform:scale(1.06)}
.pal .d1{background:linear-gradient(135deg,#ff86ab,#c084fc)}
.pal .d2{background:linear-gradient(135deg,#8b7cf6,#39c5f3)}
.pal .d3{background:linear-gradient(135deg,#f0568c,#ffc2d9)}

/* ============================================================
   4. 页面容器与页头
   ============================================================ */

.page{padding:38px 0 80px;min-height:60vh}
.ph{margin-bottom:30px}
.ph .eb{font-size:11.5px;letter-spacing:2.4px;color:var(--ac);font-weight:700;margin-bottom:10px}
.ph h1{font-size:30px;font-weight:800;letter-spacing:-1px;line-height:1.3;margin-bottom:9px}
.ph p{color:var(--tx-2);font-size:14px;line-height:1.85;max-width:640px}
.ph-row{display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap}
.ph-row .ph{margin-bottom:0;flex:1;min-width:260px}

/* ============================================================
   5. 首页门户卡片
   ============================================================ */

.portal{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.pcard{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:18px;
  padding:26px 26px 22px;cursor:pointer;transition:.22s;overflow:hidden;display:flex;flex-direction:column}
.pcard::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(180deg,var(--ac),var(--run));opacity:0;transition:.22s}
.pcard::after{content:"";position:absolute;right:-46px;top:-46px;width:170px;height:170px;border-radius:50%;
  background:radial-gradient(circle,var(--ac-soft),transparent 68%);opacity:0;transition:.28s;pointer-events:none}
.pcard:hover{background:var(--panel-2);border-color:var(--ac-line);transform:translateY(-3px)}
.pcard:hover::before,.pcard:hover::after{opacity:1}
.pcard .no{font-size:32px;font-weight:800;letter-spacing:-1.5px;line-height:1;margin-bottom:12px;
  background:linear-gradient(135deg,var(--ac),var(--run));-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:var(--ac)}
.pcard h2{font-size:21px;font-weight:800;letter-spacing:-.3px;margin-bottom:9px}
.pcard .pd{font-size:13.5px;color:var(--tx-2);line-height:1.8;margin-bottom:18px;flex:1}
.pcard .pf{display:flex;align-items:center;gap:11px;padding-top:15px;border-top:1px solid var(--line);
  font-size:12.5px;color:var(--tx-3);flex-wrap:wrap}
.pcard .pf b{color:var(--tx-2);font-weight:700}
.pcard .go{margin-left:auto;font-size:13px;font-weight:600;color:var(--ac);display:flex;align-items:center;gap:6px}
.pcard .go::after{content:"→";transition:transform .2s}
.pcard:hover .go::after{transform:translateX(4px)}
.pcard .pill{font-size:11.5px;padding:3px 10px;border-radius:999px;background:var(--panel-3);color:var(--tx-2)}

/* ============================================================
   6. 筛选条 / 标签
   ============================================================ */

.filters{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:22px}
.fchip{padding:6px 14px;border-radius:999px;border:1px solid var(--line);font-size:12.5px;
  color:var(--tx-2);transition:.16s;cursor:pointer}
.fchip:hover{border-color:var(--line-2);color:var(--tx)}
.fchip.on{background:var(--ac-soft);border-color:var(--ac-line);color:var(--ac-2);font-weight:600}
.filters .count{margin-left:auto;font-size:12.5px;color:var(--tx-3)}

.tag{font-size:11px;padding:2px 8px;border-radius:5px;background:var(--panel-3);color:var(--tx-2)}
.kind{font-size:11px;font-weight:600;padding:2px 8px;border-radius:5px;white-space:nowrap}
.k-art{background:var(--ac-soft);color:var(--ac-2)}
.k-vid{background:var(--s-run-bg);color:var(--run)}
.k-doc{background:var(--s-done-bg);color:var(--ok)}

/* ============================================================
   7. 卡片网格
   ============================================================ */

.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(292px,1fr));gap:16px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;
  display:flex;flex-direction:column;transition:.18s}
.card:hover{border-color:var(--line-2);transform:translateY(-2px);background:var(--panel-2)}
.cover{height:118px;position:relative;display:flex;align-items:center;justify-content:center;
  font-size:34px;font-weight:800;letter-spacing:-2px;color:var(--cv-tx);background:var(--cv-a);
  background-size:cover;background-position:center}
.cover.c2{background:var(--cv-b)}
.cover.c3{background:var(--cv-c)}
.cover.c4{background:var(--cv-d)}
.cover.c2,.cover.c3,.cover.c4{background-size:cover;background-position:center}
.cover.has-img>span[aria-hidden]{display:none}
.cover.has-img::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.42))}
.cover.has-img .bd,.cover.has-img .tp{z-index:2}
.cover .bd{position:absolute;top:10px;left:10px;font-size:11px;font-weight:600;padding:3px 9px;
  border-radius:6px;background:var(--on-cover);color:var(--ac-2);backdrop-filter:blur(4px);letter-spacing:0}
.cover .tp{position:absolute;top:10px;right:10px;font-size:11px;padding:3px 9px;border-radius:6px;
  background:var(--on-cover);color:var(--tx-2);backdrop-filter:blur(4px)}
.card .bd2{padding:15px 16px 16px;display:flex;flex-direction:column;flex:1}
.card h3{font-size:15.5px;font-weight:700;line-height:1.45;margin-bottom:7px}
.card h3 a:hover{color:var(--ac-2)}
.card .ds{font-size:12.5px;color:var(--tx-3);line-height:1.7;margin-bottom:13px;flex:1}
.card .ft{display:flex;align-items:center;gap:9px;font-size:11.5px;color:var(--tx-3);
  padding-top:12px;border-top:1px solid var(--line);flex-wrap:wrap}
.card .ft .btn{margin-left:auto;padding:6px 13px;font-size:12.5px}

.play{position:absolute;width:44px;height:44px;border-radius:50%;background:rgba(9,11,15,.72);
  border:1px solid rgba(255,255,255,.22);display:grid;place-items:center;backdrop-filter:blur(4px)}
.play::after{content:"";width:0;height:0;border-left:11px solid #fff;border-top:7px solid transparent;
  border-bottom:7px solid transparent;margin-left:3px}
.dur{position:absolute;bottom:10px;right:10px;font-size:11px;padding:2px 7px;border-radius:5px;
  background:rgba(0,0,0,.65);color:#fff}

/* ============================================================
   8. 常见问题
   ============================================================ */

.faq-wrap{display:grid;grid-template-columns:190px 1fr;gap:34px;align-items:start}
.faq-nav{position:sticky;top:90px;display:flex;flex-direction:column;gap:3px}
.faq-nav a{display:block;text-align:left;padding:9px 13px;border-radius:9px;font-size:13.5px;color:var(--tx-2)}
.faq-nav a:hover{background:var(--panel-2);color:var(--tx)}
.faq-nav a.on{background:var(--ac-soft);color:var(--ac-2);font-weight:600}
.qa{border:1px solid var(--line);border-radius:var(--r);background:var(--panel);margin-bottom:10px;overflow:hidden}
.qa .q{width:100%;display:flex;align-items:center;gap:13px;padding:16px 18px;text-align:left;
  font-size:14.5px;font-weight:600;color:var(--tx)}
.qa .q:hover{background:var(--panel-2)}
.qa .q .mk{width:20px;height:20px;flex:0 0 20px;border-radius:6px;background:var(--panel-3);color:var(--ac);
  display:grid;place-items:center;font-size:13px;font-weight:700;transition:.2s}
.qa.open .q .mk{background:var(--ac-soft)}
.qa .q .arw{margin-left:auto;width:8px;height:8px;border-right:1.5px solid var(--tx-3);
  border-bottom:1.5px solid var(--tx-3);transform:rotate(45deg);transition:.2s;margin-top:-3px;flex:0 0 auto}
.qa.open .q .arw{transform:rotate(-135deg);margin-top:3px;border-color:var(--ac)}
.qa .a{display:none;padding:0 18px 18px 51px;color:var(--tx-2);font-size:13.8px;line-height:1.9}
.qa .a>*+*{margin-top:10px}
.qa .a code{background:var(--panel-3);padding:2px 6px;border-radius:4px;font-size:12.5px;color:var(--ac-2)}
.qa.open .a{display:block}
.faq-group-title{font-size:16px;font-weight:700;margin:26px 0 12px;padding-left:2px}
.faq-group-title:first-child{margin-top:0}

/* ============================================================
   9. 文游许愿
   ============================================================ */

.wish{display:grid;grid-template-columns:352px 1fr;gap:30px;align-items:start}
.form{position:sticky;top:90px;background:var(--panel);border:1px solid var(--line);
  border-radius:var(--r);padding:22px 22px 24px}
.form h2{font-size:16.5px;font-weight:700;margin-bottom:5px}
.form .sub{font-size:12.5px;color:var(--tx-3);margin-bottom:20px;line-height:1.7}
.field{margin-bottom:15px}
.field label{display:block;font-size:12.5px;color:var(--tx-2);margin-bottom:6px;font-weight:600}
.field label .req{color:var(--warn);margin-left:3px}
.field input,.field textarea,.field select{width:100%;padding:10px 12px;border-radius:9px;
  background:var(--panel-2);border:1px solid var(--line);color:var(--tx);outline:none;transition:.15s}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--ac-line);background:var(--panel-3)}
.field input::placeholder,.field textarea::placeholder{color:var(--tx-3)}
.field textarea{resize:vertical;min-height:86px;line-height:1.7}
.field .hint{font-size:11.5px;color:var(--tx-3);margin-top:5px}
.field.err input,.field.err textarea{border-color:var(--err);background:var(--err-bg)}
.field .errmsg{display:none;font-size:11.5px;color:var(--err);margin-top:5px}
.field.err .errmsg{display:block}
.form .btn.pri{width:100%;justify-content:center;padding:11px;font-size:14px;margin-top:6px}
.hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.cap-q{display:flex;align-items:center;gap:10px}
.cap-q span{font-size:14px;font-weight:700;color:var(--ac-2);white-space:nowrap;
  background:var(--ac-soft);padding:9px 12px;border-radius:9px;letter-spacing:1px}
.cap-q input{flex:1;min-width:0}

.notice{padding:12px 15px;border-radius:10px;font-size:13px;line-height:1.7;margin-bottom:16px;
  border:1px solid var(--line-2);background:var(--panel-2)}
.notice.ok{border-color:var(--ok);color:var(--ok);background:var(--s-done-bg)}
.notice.bad{border-color:var(--err);color:var(--err);background:var(--err-bg)}

.board-hd{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.board-hd h2{font-size:16.5px;font-weight:700}
.board-hd .st{padding:5px 11px;border-radius:999px;font-size:12.5px;color:var(--tx-2);
  border:1px solid var(--line)}
.board-hd .st:hover{border-color:var(--line-2);color:var(--tx)}
.board-hd .st.on{border-color:var(--ac-line);background:var(--ac-soft);color:var(--ac-2);font-weight:600}

.wcard{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:17px 19px;
  margin-bottom:12px;transition:.16s}
.wcard:hover{border-color:var(--line-2)}
.wcard .r1{display:flex;align-items:center;gap:10px;margin-bottom:9px;flex-wrap:wrap}
.wcard .r1 h3{font-size:15.5px;font-weight:700}
.stbadge{font-size:11.5px;font-weight:700;padding:3px 10px;border-radius:6px;white-space:nowrap}
.s-wait{background:var(--s-wait-bg);color:var(--warn)}
.s-run{background:var(--s-run-bg);color:var(--run)}
.s-done{background:var(--s-done-bg);color:var(--ok)}
.wcard .r1 .tm{margin-left:auto;font-size:11.5px;color:var(--tx-3)}
.wcard .meta{display:flex;gap:16px;flex-wrap:wrap;font-size:12.5px;color:var(--tx-3);margin-bottom:10px}
.wcard .meta b{color:var(--tx-2);font-weight:600}
.wcard .plot{font-size:13.5px;color:var(--tx-2);line-height:1.85;padding:11px 14px;border-radius:9px;
  background:var(--panel-2);border-left:2px solid var(--line-2);white-space:pre-wrap;word-break:break-word}
.steps{display:flex;align-items:center;gap:0;margin-top:14px}
.steps .s{flex:1;text-align:center;font-size:11px;color:var(--tx-3);position:relative;padding-top:15px}
.steps .s::before{content:"";position:absolute;top:5px;left:50%;transform:translateX(-50%);
  width:9px;height:9px;border-radius:50%;background:var(--panel-3);border:1.5px solid var(--line-2);z-index:2}
.steps .s::after{content:"";position:absolute;top:9px;left:50%;width:100%;height:1.5px;background:var(--line-2)}
.steps .s:last-child::after{display:none}
.steps .s.act{color:var(--ac-2);font-weight:600}
.steps .s.act::before{background:var(--ac);border-color:var(--ac)}
.steps .s.dn::before{background:var(--ok);border-color:var(--ok)}
.steps .s.dn::after{background:var(--ok)}

.empty{text-align:center;padding:50px 20px;color:var(--tx-3);font-size:13.5px;
  border:1px dashed var(--line-2);border-radius:var(--r);line-height:2}

/* ============================================================
   10. 文章 / 详情页
   ============================================================ */

.art{max-width:820px;margin:0 auto}
.art-hd{margin-bottom:26px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.art-hd .crumb{font-size:12.5px;color:var(--tx-3);margin-bottom:14px}
.art-hd .crumb a:hover{color:var(--ac-2)}
.art-hd h1{font-size:31px;font-weight:800;letter-spacing:-.8px;line-height:1.35;margin-bottom:14px}
.art-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--tx-3)}
.art-hero{margin:0 0 28px;border-radius:var(--r);overflow:hidden;border:1px solid var(--line)}
.art-body{font-size:15.2px;line-height:2;color:var(--tx-2)}
.art-body>*+*{margin-top:17px}
.art-body h2{font-size:21px;font-weight:800;color:var(--tx);margin-top:36px;letter-spacing:-.3px}
.art-body h3{font-size:17.5px;font-weight:700;color:var(--tx);margin-top:28px}
.art-body a{color:var(--ac-2);text-decoration:underline;text-underline-offset:3px}
.art-body ul,.art-body ol{padding-left:24px}
.art-body ul{list-style:disc}
.art-body ol{list-style:decimal}
.art-body li+li{margin-top:6px}
.art-body img{border-radius:10px;margin:20px auto}
.art-body blockquote{padding:12px 18px;border-left:3px solid var(--ac-line);background:var(--panel-2);
  border-radius:0 9px 9px 0;color:var(--tx-2)}
.art-body code{background:var(--panel-3);padding:2px 6px;border-radius:4px;font-size:13px;color:var(--ac-2)}
.art-body pre{background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:15px 17px;
  overflow-x:auto;font-size:13px;line-height:1.75}
.art-body pre code{background:none;padding:0;color:var(--tx-2)}
.art-body table{width:100%;border-collapse:collapse;font-size:13.5px}
.art-body th,.art-body td{border:1px solid var(--line-2);padding:9px 12px;text-align:left}
.art-body th{background:var(--panel-2);font-weight:700;color:var(--tx)}
.art-body iframe{width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:10px;margin:20px 0}
.art-body .wp-block-embed{margin:22px 0}
.art-ft{margin-top:40px;padding-top:22px;border-top:1px solid var(--line);
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--tx-3)}

.dlbox{margin:0 0 28px;padding:20px 22px;border-radius:var(--r);border:1px solid var(--ac-line);
  background:var(--ac-soft);display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.dlbox .ic{width:44px;height:44px;flex:0 0 44px;border-radius:11px;background:var(--ac);color:var(--on-ac);
  display:grid;place-items:center;font-size:13px;font-weight:800}
.dlbox .t1{font-size:15px;font-weight:700;margin-bottom:3px}
.dlbox .t2{font-size:12.5px;color:var(--tx-2)}
.dlbox .btn{margin-left:auto;padding:11px 22px;font-size:14px}
.dlbox.warnbox{border-color:var(--warn);background:var(--s-wait-bg)}
.dlbox.warnbox .ic{background:var(--warn)}

.pager{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:38px;flex-wrap:wrap}
.pager .page-numbers{padding:7px 13px;border-radius:9px;border:1px solid var(--line);font-size:13px;
  color:var(--tx-2);transition:.16s}
.pager .page-numbers:hover{border-color:var(--ac-line);color:var(--tx)}
.pager .page-numbers.current{background:var(--ac-soft);border-color:var(--ac-line);color:var(--ac-2);font-weight:600}
.pager .page-numbers.dots{border:0}

/* ============================================================
   11. 搜索与页脚
   ============================================================ */

.searchform{display:flex;gap:8px;margin-bottom:26px;max-width:520px}
.searchform input{flex:1;padding:10px 14px;border-radius:9px;background:var(--panel);
  border:1px solid var(--line);color:var(--tx);outline:none;transition:.15s}
.searchform input:focus{border-color:var(--ac-line)}
.searchform button{padding:10px 20px;border-radius:9px;background:var(--panel);border:1px solid var(--line-2);
  color:var(--tx);font-size:13.5px;transition:.16s}
.searchform button:hover{border-color:var(--ac-line);background:var(--panel-2)}

.ft-site{margin-top:40px;padding:34px 0 44px;border-top:1px solid var(--line);text-align:center;
  font-size:12.5px;color:var(--tx-3);line-height:2}
.ft-site a{color:var(--tx-2)}
.ft-site a:hover{color:var(--ac-2)}
.ft-links{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin-bottom:10px}

.toast{position:fixed;left:50%;bottom:34px;transform:translate(-50%,20px);z-index:99;
  padding:11px 20px;border-radius:10px;background:var(--panel-3);border:1px solid var(--ac-line);
  color:var(--tx);font-size:13.5px;opacity:0;pointer-events:none;transition:.25s;
  box-shadow:0 10px 30px rgba(0,0,0,.28);max-width:min(90vw,420px)}
.toast.on{opacity:1;transform:translate(-50%,0)}

/* ============================================================
   12. 响应式
   ============================================================ */

@media(max-width:1000px){
  .faq-wrap{grid-template-columns:1fr;gap:20px}
  .faq-nav{position:static;flex-direction:row;flex-wrap:wrap;gap:6px}
  .wish{grid-template-columns:1fr;gap:22px}
  .form{position:static}
}
@media(max-width:760px){
  .top{padding:0 16px;gap:12px;height:58px}
  .nav{gap:0;margin-left:4px;overflow-x:auto;scrollbar-width:none}
  .nav::-webkit-scrollbar{display:none}
  .nav a{padding:7px 9px;font-size:13px}
  .top-r{gap:7px}
  .top-r .btn:not(.pri):not(.pal){display:none}
  .pal em{display:none}
  .pal{padding:5px 8px;gap:5px}
  .wrap{padding:0 16px}
  .page{padding:26px 0 64px}
  .ph h1{font-size:23px}
  .portal{grid-template-columns:1fr}
  .grid{grid-template-columns:1fr}
  .art-hd h1{font-size:24px}
  .dlbox .btn{margin-left:0;width:100%;justify-content:center}
  .pcard{padding:22px 20px 18px}
}

/* ============================================================
   13. 打印
   ============================================================ */
@media print{
  .top,.ft-site,.board-hd,.form,.pal,.dlbox .btn{display:none}
  body{background:#fff;color:#000}
}
