*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif;background:radial-gradient(circle at top,#fff1d6 0,#f8d4ab 35%,#efbc79 100%);color:#5c3217}a{text-decoration:none;color:inherit}.wrap{width:min(1180px,92vw);margin:0 auto}.site-frame{min-height:100vh;display:flex;flex-direction:column}.site-header{background:linear-gradient(90deg,#6f1d1b,#b91c1c,#f59e0b);color:#fff;box-shadow:0 10px 30px rgba(110,42,10,.2);position:sticky;top:0;z-index:10}.site-main{flex:1}.site-footer{margin-top:auto;background:linear-gradient(90deg,#5b1b18,#7f1d1d,#9a3412);color:#fff}.footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px 20px;padding:16px 0;font-weight:700}.footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px}.footer-link{text-decoration:underline;text-underline-offset:3px}.footer-link:hover{color:#fde68a}.footer-links-label{opacity:.85}.banner-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 0}.top-nav{display:flex;flex-wrap:wrap;gap:10px}.top-nav a{padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.16);font-weight:700}.brand-big{font-size:30px;font-weight:900;letter-spacing:3px}.brand-sub{margin-top:6px;opacity:.92}.page-body{padding:22px 0 40px}.panel{background:rgba(255,255,255,.84);border:1px solid rgba(150,74,16,.12);border-radius:22px;box-shadow:0 16px 36px rgba(129,66,21,.1);padding:18px}.main-grid{display:grid;grid-template-columns:2.1fr .9fr;gap:22px}.hero-panel{display:flex;justify-content:space-between;gap:18px;background:linear-gradient(135deg,#fff7ed,#fff0d7)}.hero-kicker{color:#cf4a11;font-weight:800;letter-spacing:2px;margin-bottom:8px}.hero-copy h1{font-size:38px;margin:0 0 10px;color:#8d3a12}.hero-copy p{margin:0;line-height:1.8;max-width:620px}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;min-width:320px}.stat-box{background:linear-gradient(180deg,#fff,#fff1dd);border:1px solid #f0cfaa;border-radius:18px;padding:16px;text-align:center}.stat-box span{color:#9a6640;font-size:14px}.stat-box strong{display:block;margin-top:8px;color:#b24d12;font-size:20px}.section-panel{margin-top:18px}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.section-head h2,.panel-title,.side-panel h2{margin:0;font-size:20px;color:#8c3b14}.modern-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.modern-card{display:block;padding:16px;border-radius:18px;background:linear-gradient(180deg,#fff,#fff8ef);border:1px solid #f0d4b0;transition:.2s}.modern-card:hover{transform:translateY(-2px);box-shadow:0 16px 28px rgba(145,74,17,.12)}.server-name{font-size:18px;font-weight:900;color:#b91c1c}.server-version{margin-top:6px;color:#8d6345;font-size:14px}.server-top{display:flex;justify-content:space-between;gap:10px}.score-pill{background:linear-gradient(90deg,#b91c1c,#f59e0b);color:#fff;font-weight:800;padding:7px 11px;border-radius:999px;white-space:nowrap}.server-meta{display:flex;justify-content:space-between;gap:10px;margin-top:12px;color:#7d5940;font-size:13px}.server-desc{margin-top:10px;color:#6d4630;line-height:1.7}.card-actions{margin-top:14px}.btn-ghost{background:#fff;color:#b45309;border:1px solid #efc596}.article-list{display:grid;gap:12px}.article-row{display:flex;gap:14px;padding:12px 0;border-bottom:1px dashed #ebcba0}.article-date{flex:0 0 64px;height:64px;border-radius:16px;background:linear-gradient(135deg,#f59e0b,#b91c1c);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:900;box-shadow:0 10px 20px rgba(180,83,9,.18)}.article-content h3{margin:0 0 6px;font-size:18px}.article-content p{margin:0;color:#7a5133;line-height:1.7}.side-col{display:grid;gap:18px}.quick-links{display:grid;gap:10px}.quick-links a{display:block;padding:12px 14px;background:linear-gradient(180deg,#fff,#fff2e3);border:1px solid #f0d2a9;border-radius:14px;color:#a64f12;font-weight:700;position:relative}.quick-links a::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:14px 0 0 14px;background:linear-gradient(180deg,#b91c1c,#f59e0b)}.tag-box{display:flex;flex-wrap:wrap;gap:10px}.tag{background:#fff0dd;color:#9a4d13;padding:8px 12px;border-radius:999px;border:1px solid #efc596;font-weight:700}.warm-tag{background:linear-gradient(180deg,#fff1df,#ffe2be);border:1px solid #efc48b;color:#9a4d13;font-weight:800}.form{display:grid;gap:12px}.input,textarea,select{width:100%;padding:12px 14px;border:1px solid #e3b98d;border-radius:12px;background:#fff;font:inherit}.btn{display:inline-block;background:linear-gradient(90deg,#b45309,#ea7c21);color:#fff;border:none;border-radius:12px;padding:12px 18px;font-weight:800;cursor:pointer}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px;border-bottom:1px solid #efd5bc;text-align:left}.admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.admin-tile{display:block;padding:18px;border-radius:18px;border:1px solid #f0d4b0;background:linear-gradient(180deg,#fff,#fff6ec)}.admin-tile strong{display:block;font-size:18px;margin-bottom:8px;color:#b91c1c}.detail-panel{margin-bottom:18px}.detail-meta{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0;color:#8d6345;font-weight:700}.tag-admin-list{display:grid;gap:10px;margin-top:14px}.tag-admin-item{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border:1px solid #efd5bc;border-radius:14px;background:#fff8ef}.table-wrap{overflow:auto}@media(max-width:900px){.main-grid,.hero-panel,.banner-inner,.admin-grid{display:block}.hero-stats,.modern-grid{grid-template-columns:1fr}.top-nav{margin-top:14px}.footer-inner{display:block}.footer-links{margin:8px 0}}

.w2-refresh-info{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 12px;color:#8d6345;font-size:13px}.w2-status-line{margin-top:10px;color:#7d5940;font-size:13px}.w2-status{display:inline-block;min-width:4.5em;text-align:center;white-space:nowrap;border-radius:999px;padding:3px 8px;font-weight:700;background:#fff0dd;color:#9a4d13}.w2-status-hot{background:#fee2d5;color:#a83219}.w2-status-smooth{background:#e8f4dd;color:#4d7025}.w2-status-new{background:#fff0ca;color:#995500}.w2-status-pending{background:#eee8df;color:#6d6257}.w2-refresh-note{margin:12px 0 0;color:#7d5940;font-size:13px}.table .w2-status{min-width:4.5em}
/* ===== T2-02 站点主题覆盖块（追加层，勿改上方母站规则） ===== */
/* ---------------------------------------------------------------------------
   T2-02「浅色卡片 + 青绿纸感」主题层
   1) 本块及其以下所有规则一律追加在母站基线之后，用同名选择器层叠覆盖母站外观；
   2) 设计 token 一律照抄《T2_设计交付_待审/T2-02/DESIGN.md》第 2 节，不自行发挥；
   3) 13px 辅助文字与状态标签的可访问性色阶见文末「施工校正块 3」；
   4) 本块为纯 CSS：不引用任何外部资源、不含脚本、不使用强制优先级写法。
   --------------------------------------------------------------------------- */

/* ===== 0. 设计 token —— 青绿纸感主题（照抄 DESIGN.md 第 2 节） ===== */
:root{
--t2-02-bg:#F7F6F2;
--t2-02-surface:#FFFFFF;
--t2-02-surface-2:#F1F5F3;
--t2-02-brand:#0F766E;
--t2-02-brand-2:#14B8A6;
--t2-02-accent:#EA580C;
--t2-02-ink:#1F2A2E;
--t2-02-text:#44535A;
--t2-02-muted:#87969C;
--t2-02-line:#E3E8E6;
--t2-02-ok:#15803D;
--t2-02-run:#1D4ED8;
--t2-02-hot:#C2410C;
--t2-02-wait:#8A7B62;
--t2-02-shadow:0 6px 18px rgba(15,118,110,.08);
--t2-02-font:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
--t2-02-radius-s:8px;
--t2-02-radius-m:14px;
--t2-02-radius-l:24px;
--t2-02-read-width:760px;
--t2-02-gap-card:18px;
--t2-02-gap-section:44px;
}

/* ===== A. 母站选择器换肤覆盖 ===== */
/* A1. 页面底 / 文字 */
body{margin:0;background:#F7F6F2;color:#44535A;font-family:var(--t2-02-font);font-size:15px;line-height:1.7;-webkit-text-size-adjust:100%}
a{text-decoration:none;color:#0F766E}
a:hover{color:#0B5E58}

/* A2. 容器 */
.wrap{width:min(1160px,92vw);margin:0 auto}

/* A3. 页头 —— 白底细线，非 sticky，深青绿文字 */
.site-header{background:#FFFFFF;color:#1F2A2E;border-bottom:1px solid #E3E8E6;box-shadow:none;position:static;top:auto;z-index:auto}
.site-header a{color:#1F2A2E}
.banner-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 0}
.brand-big{font-size:30px;font-weight:900;letter-spacing:3px;line-height:1.25;color:#0F766E}
.brand-sub{margin-top:6px;font-size:13px;line-height:1.6;color:#5D6B71}
.top-nav{display:flex;flex-wrap:wrap;gap:10px}
.top-nav a{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border-radius:999px;background:#F1F5F3;border:1px solid #E3E8E6;color:#0F766E;font-weight:700;transition:.2s}
.top-nav a:hover{background:#E6F2F1;border-color:#0F766E;color:#0B5E58}

/* A4. 页脚 —— 浅底细线，不用深色大块 */
.site-footer{margin-top:auto;background:#F1F5F3;color:#44535A;border-top:1px solid #E3E8E6}
.footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px 20px;padding:20px 0;font-weight:700;font-size:13px;line-height:1.6}
.footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px}
.footer-link{text-decoration:underline;text-underline-offset:3px;color:#0F766E}
.footer-link:hover{color:#0B5E58}
.footer-links-label{opacity:1;font-weight:400;font-size:13px;line-height:1.6;color:#5D6B71}

/* A5. 主区与面板 */
.page-body{padding:24px 0 44px}
.panel{background:#FFFFFF;border:1px solid #E3E8E6;border-radius:24px;box-shadow:var(--t2-02-shadow);padding:24px}
.hero-panel{display:flex;justify-content:space-between;align-items:center;gap:24px;background:linear-gradient(135deg,#FFFFFF 0%,#EAF3F1 100%);border:1px solid #E3E8E6;border-radius:24px;box-shadow:var(--t2-02-shadow);padding:32px}
.hero-kicker{color:#0B5E58;font-weight:800;letter-spacing:2px;margin-bottom:10px;font-size:13px;line-height:1.6}
.hero-copy h1{font-size:40px;line-height:1.2;margin:0 0 10px;color:#1F2A2E;font-weight:800;letter-spacing:.5px}
.hero-copy p{margin:0;font-size:16px;line-height:1.9;max-width:620px;color:#44535A}
.stat-box{background:#F1F5F3;border:1px solid #E3E8E6;border-radius:16px;padding:16px;text-align:center;box-shadow:none}
.stat-box span{color:#5D6B71;font-size:13px;line-height:1.6}
.stat-box strong{display:block;margin-top:8px;color:#0F766E;font-size:20px;line-height:1.25;font-weight:800}
.section-panel{margin-top:44px}
.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}
.section-head h2{margin:0;font-size:24px;line-height:1.4;color:#1F2A2E;font-weight:800}
.panel-title{margin:0;font-size:24px;line-height:1.4;color:#1F2A2E;font-weight:800}
.side-panel h2{margin:0 0 12px;font-size:24px;line-height:1.4;color:#1F2A2E;font-weight:800}

/* A6. 列表卡（母站 modern-card / server-*） */
.modern-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.modern-card{display:block;padding:20px;border-radius:24px;background:#FFFFFF;border:1px solid #E3E8E6;box-shadow:var(--t2-02-shadow);transition:.2s}
.modern-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(15,118,110,.14);border-color:#CFE3E0}
.server-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.server-name{display:block;font-size:18px;line-height:1.5;font-weight:800;color:#0F766E}
.server-version{display:block;margin-top:6px;color:#5D6B71;font-size:13px;line-height:1.6}
.score-pill{background:linear-gradient(90deg,#0F766E 0%,#0C7E75 100%);color:#fff;font-weight:800;font-size:13px;line-height:1.6;padding:6px 12px;border-radius:999px;white-space:nowrap}
.server-meta{display:flex;justify-content:space-between;gap:10px;margin-top:12px;color:#5D6B71;font-size:13px;line-height:1.6}
.server-desc{margin-top:10px;color:#44535A;font-size:14px;line-height:1.7}
.card-actions{margin-top:16px;display:flex;flex-wrap:wrap;gap:10px}

/* A7. 按钮 */
.btn{display:inline-flex;align-items:center;justify-content:center;background:#0F766E;color:#fff;border:none;border-radius:14px;padding:12px 20px;min-height:44px;font-family:inherit;font-size:15px;font-weight:800;cursor:pointer;transition:.2s}
.btn:hover{background:#0B5E58}
.btn-ghost{display:inline-flex;align-items:center;justify-content:center;background:#FFFFFF;color:#0F766E;border:1px solid #0F766E;border-radius:14px;min-height:44px;padding:12px 20px;font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:.2s}
.btn-ghost:hover{background:#E6F2F1;color:#0B5E58}

/* A8. 资讯列表（母站 article-*） */
.article-list{display:grid;gap:12px}
.article-row{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid #E3E8E6}
.article-date{flex:0 0 64px;height:64px;border-radius:16px;background:linear-gradient(135deg,#0F766E,#0C7E75);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;line-height:1.25;font-weight:900;box-shadow:none}
.article-content h3{margin:0 0 6px;font-size:17px;line-height:1.5;color:#1F2A2E;font-weight:800}
.article-content p{margin:0;color:#44535A;font-size:14px;line-height:1.7}

/* A9. 侧栏（母站 side-col / quick-links / tag） */
.side-col{display:grid;gap:18px}
.quick-links{display:grid;gap:10px}
.quick-links a{display:block;padding:12px 14px;min-height:44px;background:#FFFFFF;border:1px solid #E3E8E6;border-radius:14px;color:#0F766E;font-weight:700;font-size:14px;line-height:1.6;position:relative;transition:.2s}
.quick-links a:hover{border-color:#0F766E;background:#F1F5F3;color:#0B5E58}
.quick-links a::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:14px 0 0 14px;background:linear-gradient(180deg,#0F766E 0%,#14B8A6 100%)}
.tag-box{display:flex;flex-wrap:wrap;gap:10px}
.tag{display:inline-flex;align-items:center;min-height:32px;background:#F1F5F3;color:#0F766E;padding:8px 12px;border-radius:999px;border:1px solid #E3E8E6;font-weight:700;font-size:13px;line-height:1.6}
.warm-tag{display:inline-flex;align-items:center;min-height:32px;background:#E6F2F1;border:1px solid #CBE3DF;color:#0B5E58;font-weight:800;font-size:13px;line-height:1.6;padding:8px 12px;border-radius:999px}

/* A10. 表单 */
.form{display:grid;gap:12px}
.input,textarea,select{width:100%;padding:12px 14px;border:1px solid #E3E8E6;border-radius:14px;background:#FFFFFF;color:#44535A;font:inherit;font-size:15px;line-height:1.6;min-height:44px;transition:.2s}
.input:focus,textarea:focus,select:focus{outline:2px solid rgba(20,184,166,.45);outline-offset:1px;border-color:#0F766E}
textarea{min-height:120px}

/* A11. 表格（列表页，PC 形态） */
.table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.7}
.table th{padding:12px;border-bottom:1px solid #E3E8E6;text-align:left;background:#F1F5F3;color:#1F2A2E;font-weight:800;font-size:13px;white-space:nowrap}
.table td{padding:12px;border-bottom:1px solid #E3E8E6;text-align:left;color:#44535A}
.table tbody tr:hover td{background:#F7F6F2}
.table-wrap{overflow:auto;border:1px solid #E3E8E6;border-radius:14px;background:#FFFFFF}

/* A12. 后台瓦片与详情元信息 */
.admin-tile{display:block;padding:18px;border-radius:24px;border:1px solid #E3E8E6;background:#FFFFFF;box-shadow:var(--t2-02-shadow)}
.admin-tile strong{display:block;font-size:17px;line-height:1.5;margin-bottom:8px;color:#0F766E}
.detail-meta{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0;color:#5D6B71;font-weight:700;font-size:13px;line-height:1.6}

/* A13. 状态与刷新说明（状态四色只用于文字标签底色） */
.w2-refresh-info{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 12px;color:#5D6B71;font-size:13px;line-height:1.6}
.w2-status-line{margin-top:10px;color:#5D6B71;font-size:13px;line-height:1.6}
.w2-status{display:inline-block;min-width:4.5em;text-align:center;white-space:nowrap;border-radius:999px;padding:3px 10px;font-weight:700;font-size:13px;line-height:1.6;background:#F1F5F3;color:#44535A}
.w2-status-hot{background:#FDEBE0;color:#A8390A}
.w2-status-smooth{background:#E6EDFB;color:#1D4ED8}
.w2-status-new{background:#E6F4EA;color:#14532D}
.w2-status-pending{background:#F1EDE4;color:#6B5D42}
.w2-refresh-note{margin:12px 0 0;color:#5D6B71;font-size:13px;line-height:1.6}

/* ===== B. T2-02 新增组件（类名契约_T2.md 第 1~3 节） ===== */
/* B1. 通用文字与按钮 */
.t2-h1-sub{display:block;margin-top:8px;font-size:14px;line-height:1.6;font-weight:600;letter-spacing:.4px;color:#0B5E58}
.hero-copy h1 .t2-h1-sub,.panel>h1 .t2-h1-sub{color:#0B5E58}
.t2-sub{margin:0 0 16px;font-size:14px;line-height:1.7;color:#44535A}
.t2-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 22px;border-radius:14px;background:#0F766E;color:#fff;border:1px solid #0F766E;font-family:inherit;font-size:15px;font-weight:800;cursor:pointer;text-align:center;transition:.2s}
.t2-btn:hover{background:#0B5E58;border-color:#0B5E58;color:#fff}
.t2-btn-ghost{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 22px;border-radius:14px;background:#FFFFFF;color:#0F766E;border:1px solid #0F766E;font-family:inherit;font-size:15px;font-weight:700;cursor:pointer;text-align:center;transition:.2s}
.t2-btn-ghost:hover{background:#E6F2F1;color:#0B5E58}
.t2-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 12px;border-radius:999px;background:#F1F5F3;border:1px solid #E3E8E6;color:#0F766E;font-size:13px;line-height:1.6;font-weight:800;white-space:nowrap}
.t2-row-badge{display:inline-flex;align-items:center}
.t2-empty{display:grid;place-items:center;align-content:center;gap:12px;text-align:center;padding:40px 20px;border:2px dashed #E3E8E6;border-radius:24px;background:#FFFFFF;color:#5D6B71;font-size:14px;line-height:1.7}
.t2-empty p{margin:0;max-width:520px}
.t2-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;font-size:13px;line-height:1.6;color:#5D6B71}
.t2-crumb a{color:#0F766E;font-weight:700}
.t2-crumb a+a::before{content:"/";margin-right:8px;color:#C7D2CF;font-weight:400}
.t2-readnote{background:#F1F5F3;border:1px solid #E3E8E6;border-left:3px solid #0F766E;border-radius:14px;padding:14px 16px;margin-bottom:16px;font-size:13px;line-height:1.7;color:#44535A}
.t2-endnote{display:block;margin-top:24px;padding:20px;background:#FFFFFF;border:1px dashed #CFE3E0;border-radius:24px;box-shadow:var(--t2-02-shadow);font-size:14px;line-height:1.7;color:#44535A}
.t2-endnote-title{margin:0 0 10px;font-size:17px;line-height:1.5;color:#1F2A2E;font-weight:800}
.t2-endnote ol,.t2-endnote ul{margin:0 0 10px;padding-left:20px}
.t2-endnote li{margin:0 0 6px}
.t2-endnote a{color:#0F766E;font-weight:700}
.footer-note{width:100%;margin-top:12px;padding-top:12px;border-top:1px solid #E3E8E6;font-size:12px;line-height:1.7;font-weight:400;color:#5D6B71}

/* B2. 页面骨架 */
.t2-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;align-items:start}
.t2-side{position:sticky;top:24px;display:grid;gap:18px;min-width:0}
.t2-side-block{background:#FFFFFF;border:1px solid #E3E8E6;border-radius:24px;box-shadow:var(--t2-02-shadow);padding:20px}
.t2-side-title{margin:0 0 12px;font-size:17px;line-height:1.5;color:#1F2A2E;font-weight:800}
.t2-tags{display:flex;flex-wrap:wrap;gap:8px}
.t2-tags a,.t2-tags span{display:inline-flex;align-items:center;min-height:32px;padding:6px 12px;border-radius:999px;background:#F1F5F3;border:1px solid #E3E8E6;color:#0F766E;font-size:13px;line-height:1.6;font-weight:700}
.t2-tags a:hover{background:#E6F2F1;border-color:#0F766E;color:#0B5E58}
.t2-rank{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.t2-legend{background:#F1F5F3;border:1px solid #E3E8E6;border-radius:16px;padding:16px 18px;margin:0 0 16px}
.t2-legend-title{margin:0 0 8px;font-size:13px;line-height:1.6;font-weight:800;letter-spacing:1px;color:#0B5E58}
.t2-legend-list{margin:0;padding:0;list-style:none;display:grid;gap:6px;font-size:13px;line-height:1.7;color:#44535A}
.t2-legend-list li{padding-left:16px;position:relative}
.t2-legend-list li::before{content:'';position:absolute;left:0;top:.65em;width:6px;height:6px;border-radius:3px;background:#14B8A6}
.t2-tips{background:#F1F5F3;border:1px solid #E3E8E6;border-left:3px solid #14B8A6;border-radius:16px;padding:18px}
.t2-tips-title{margin:0 0 8px;font-size:17px;line-height:1.5;color:#1F2A2E;font-weight:800}
.t2-tips p,.t2-tips li{font-size:14px;line-height:1.7;color:#44535A}
.t2-tips p{margin:0 0 8px}
.t2-tips ul,.t2-tips ol{margin:0;padding-left:20px}
.t2-tips li{margin:0 0 6px}
.t2-detail-meta{display:flex;flex-wrap:wrap;gap:12px 20px;padding:16px 18px;background:#F1F5F3;border:1px solid #E3E8E6;border-radius:16px;font-size:13px;line-height:1.7;color:#44535A}
.t2-detail-meta>span{display:inline-flex;align-items:baseline;gap:6px}
.t2-detail-block{background:#FFFFFF;border:1px solid #E3E8E6;border-radius:24px;box-shadow:var(--t2-02-shadow);padding:24px;margin-top:16px}
.t2-detail-block-title{margin:0 0 12px;font-size:17px;line-height:1.5;color:#1F2A2E;font-weight:800}
.t2-detail-block p{margin:0 0 12px;font-size:17px;line-height:1.95;color:#44535A}
.t2-detail-block p:last-child{margin-bottom:0}
.t2-detail-block ul,.t2-detail-block ol{margin:0 0 12px;padding-left:20px}
.t2-detail-block li{margin:0 0 8px;font-size:15px;line-height:1.85;color:#44535A}

/* B3. 首页模块 —— M1 HERO */
.t2-hero{position:relative;min-height:320px;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:36px}
.t2-hero::after{content:'';position:absolute;right:-90px;top:-90px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(20,184,166,.18),rgba(20,184,166,0) 70%);pointer-events:none}
.t2-hero-grid{position:relative;z-index:1;display:flex;align-items:center;gap:36px;width:100%}
.t2-hero-grid>*{min-width:0}
.t2-hero-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}

/* B4. 首页模块 —— 三步选服小卡 */
.t2-steps{display:grid;gap:12px;justify-items:start}
.t2-step{display:flex;align-items:flex-start;gap:12px;width:220px;min-height:92px;padding:16px;border-radius:16px;background:#FFFFFF;border:1px solid #E3E8E6;box-shadow:var(--t2-02-shadow)}
.t2-step-no{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:10px;background:#14B8A6;color:#06302C;font-size:15px;line-height:1;font-weight:800}
.t2-step-title{margin:2px 0 0;font-size:15px;line-height:1.5;color:#1F2A2E;font-weight:800}
.t2-step-desc{margin:4px 0 0;font-size:13px;line-height:1.6;color:#5D6B71}

/* B5. 首页模块 —— M2 今日新服大卡（PC 2 列 × 560×168，圆角 24） */
.t2-cardgrid{display:grid;grid-template-columns:repeat(2,minmax(0,560px));gap:18px;justify-content:start}
.t2-bigcard{display:flex;flex-direction:column;min-height:168px;padding:20px;border-radius:24px;background:#FFFFFF;border:1px solid #E3E8E6;box-shadow:var(--t2-02-shadow);transition:.2s}
.t2-bigcard:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(15,118,110,.14);border-color:#CFE3E0}
.t2-bigcard-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.t2-bigcard-name{margin:0;font-size:18px;line-height:1.5;font-weight:800;color:#0F766E}
.t2-bigcard-ver{display:inline-flex;align-items:center;margin-top:8px;padding:3px 10px;border-radius:999px;background:#F1F5F3;border:1px solid #E3E8E6;color:#5D6B71;font-size:13px;line-height:1.6}
.t2-bigcard-meta{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:12px;color:#5D6B71;font-size:13px;line-height:1.6}
.t2-bigcard-cta{margin-top:16px;display:flex;flex-wrap:wrap;gap:10px}

/* B6. 首页模块 —— M3 快速通道 4 卡（PC 4 列 280×120） */
.t2-quick4{display:grid;grid-template-columns:repeat(4,minmax(0,280px));gap:12px}
.t2-quick4-item{display:block;min-height:120px;padding:18px;border-radius:24px;background:#FFFFFF;border:1px solid #E3E8E6;box-shadow:var(--t2-02-shadow);transition:.2s}
.t2-quick4-item:hover{border-color:#0F766E;transform:translateY(-2px);box-shadow:0 10px 26px rgba(15,118,110,.14)}
.t2-quick4-title{margin:0;font-size:16px;line-height:1.5;color:#1F2A2E;font-weight:800}
.t2-quick4-desc{margin:8px 0 0;font-size:13px;line-height:1.7;color:#5D6B71}

/* B7. 首页模块 —— M4 版本对照（PC 2×2，每张 560×220） */
.t2-version-grid{display:grid;grid-template-columns:repeat(2,minmax(0,560px));gap:18px}
.t2-version-card{min-height:220px;padding:24px;border-radius:24px;background:#FFFFFF;border:1px solid #E3E8E6;box-shadow:var(--t2-02-shadow);display:grid;gap:12px;align-content:start}
.t2-version-name{margin:0;font-size:17px;line-height:1.5;color:#1F2A2E;font-weight:800}
.t2-version-desc{margin:0;font-size:14px;line-height:1.7;color:#44535A}
.t2-version-fit{margin:0;font-size:13px;line-height:1.7;color:#5D6B71}
.t2-version-check{margin:0;padding-top:12px;border-top:1px dashed #E3E8E6;font-size:13px;line-height:1.7;color:#44535A}
.t2-version-check strong{color:#0B5E58}

/* B8. 首页模块 —— M5 热门推荐（横向一排，可横滑） */
.t2-hotrow{display:flex;gap:12px;max-width:100%;overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;padding:4px 4px 14px}
.t2-hotcard{flex:0 0 180px;scroll-snap-align:start;min-height:200px;padding:16px;border-radius:24px;background:#FFFFFF;border:1px solid #E3E8E6;box-shadow:var(--t2-02-shadow);display:flex;flex-direction:column;gap:8px;transition:.2s}
.t2-hotcard:hover{border-color:#0F766E;box-shadow:0 10px 26px rgba(15,118,110,.14)}
.t2-hot-no{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:10px;background:#14B8A6;color:#06302C;font-size:14px;line-height:1;font-weight:800}
.t2-hot-name{margin:0;font-size:15px;line-height:1.5;font-weight:800;color:#1F2A2E}
.t2-hot-meta{margin:0;color:#5D6B71;font-size:13px;line-height:1.6}
.t2-hot-desc{margin:0;font-size:13px;line-height:1.7;color:#44535A}
/* 区内若把「查看完整推荐页」链接放进横滑容器，用 sticky 让它常驻右侧；放在容器外则按下条规则 */
.t2-hotrow>a:not(.t2-hotcard){position:sticky;right:0;align-self:center;flex:0 0 auto;display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border-radius:999px;background:#0F766E;color:#fff;font-weight:700;font-size:13px;line-height:1.6;white-space:nowrap;box-shadow:0 4px 12px rgba(15,118,110,.18)}
.t2-hotrow+a{display:inline-flex;align-items:center;min-height:44px;margin-top:8px;font-weight:700;font-size:14px;color:#0F766E}
.t2-hotrow+a.t2-btn,.t2-hotrow+a.t2-btn-ghost{margin-top:8px}
.t2-hotrow::-webkit-scrollbar{height:6px}
.t2-hotrow::-webkit-scrollbar-thumb{background:#CFE3E0;border-radius:3px}
.t2-hotrow::-webkit-scrollbar-track{background:#F1F5F3;border-radius:3px}

/* B9. 首页模块 —— M6 新手上手指南（单栏 760 + 左侧 160 小目录） */
.t2-guide{display:flex;align-items:flex-start;gap:24px;max-width:960px;margin:0 auto}
.t2-guide>h2,.t2-guide>.section-head{order:-1;flex:0 0 100%}
.t2-toc{order:0;flex:0 0 160px;position:sticky;top:24px;padding:16px;border-radius:16px;background:#FFFFFF;border:1px solid #E3E8E6;box-shadow:var(--t2-02-shadow)}
.t2-toc h3,.t2-toc strong{display:block;margin:0 0 8px;font-size:13px;line-height:1.6;font-weight:800;letter-spacing:1px;color:#0B5E58}
.t2-toc a{display:block;padding:6px 0;font-size:13px;line-height:1.6;color:#44535A}
.t2-toc a:hover{color:#0F766E}
.t2-guide-body{order:1;flex:1 1 auto;min-width:0;max-width:760px;font-size:17px;line-height:1.95;color:#44535A}
.t2-guide-body p{margin:0 0 16px}
.t2-guide-sec{margin:0 0 36px;scroll-margin-top:24px}
.t2-guide-sec h3{margin:0 0 12px;padding-left:12px;border-left:3px solid #14B8A6;font-size:17px;line-height:1.5;color:#1F2A2E;font-weight:800}
.t2-guide-sec ul,.t2-guide-sec ol{margin:0 0 16px;padding-left:20px}
.t2-guide-sec li{margin:0 0 8px}

/* B10. 首页模块 —— M7 常见问题（单栏 760，问答卡圆角 24，Q 青色胶囊） */
.t2-faq{display:grid;gap:16px;max-width:760px;margin:0 auto}
.t2-faq-item{background:#FFFFFF;border:1px solid #E3E8E6;border-radius:24px;box-shadow:var(--t2-02-shadow);padding:24px}
.t2-faq-q{display:flex;align-items:flex-start;flex-wrap:wrap;gap:10px;margin:0 0 12px;font-size:17px;line-height:1.6;font-weight:800;color:#1F2A2E}
/* 序号由页面文案手写，放在 .t2-faq-q 的首个子元素里，用 CSS 做青色胶囊；不使用 counter 自动编号 */
.t2-faq-q>:first-child{display:inline-flex;align-items:center;justify-content:center;padding:2px 12px;border-radius:999px;background:#E6F2F1;border:1px solid #CBE3DF;color:#0B5E58;font-size:13px;line-height:1.6;font-weight:800;letter-spacing:.5px}
.t2-faq-a{margin:0;font-size:17px;line-height:1.95;color:#44535A}

/* B11. 首页模块 —— M8 资讯卡（PC 3 列 360×200） */
.t2-newsgrid{display:grid;grid-template-columns:repeat(3,minmax(0,360px));gap:18px}
.t2-newscard{display:flex;flex-direction:column;min-height:200px;padding:20px;border-radius:24px;background:#FFFFFF;border:1px solid #E3E8E6;box-shadow:var(--t2-02-shadow);transition:.2s}
.t2-newscard:hover{border-color:#0F766E;transform:translateY(-2px);box-shadow:0 10px 26px rgba(15,118,110,.14)}
.t2-newscard-date{font-size:13px;line-height:1.6;color:#5D6B71;font-weight:700}
.t2-newscard-title{margin:8px 0 0;font-size:17px;line-height:1.5;color:#1F2A2E;font-weight:800}
.t2-newscard-sum{margin:10px 0 0;font-size:14px;line-height:1.7;color:#44535A}

/* ===== C. 响应式（1440 / 1024 / 768 / 640 / 360 均不出现整页横向滚动条） ===== */
@media (max-width:1024px){
.t2-layout{grid-template-columns:minmax(0,1fr);gap:24px}
.t2-side{position:static;top:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.t2-hero-grid{flex-direction:column;align-items:stretch;gap:24px}
.hero-panel{display:block}
.t2-guide{display:block;max-width:760px}
.t2-guide-body{max-width:760px;margin:0 auto}
.t2-toc{position:static;width:auto;margin:0 0 24px;padding:14px 16px}
.t2-cardgrid,.t2-version-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.t2-quick4{grid-template-columns:repeat(2,minmax(0,1fr))}
.t2-newsgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:768px){
html,body{overflow-x:hidden}
body{font-size:15px;line-height:1.7}
.hero-copy h1{font-size:30px;line-height:1.25}
.hero-panel{padding:20px}
.t2-hero{padding:24px;min-height:0}
.t2-hero-btns{gap:10px}
.t2-hero-btns .t2-btn,.t2-hero-btns .t2-btn-ghost{flex:1 1 100%}
.t2-cardgrid{grid-template-columns:minmax(0,1fr)}
.t2-version-grid{grid-template-columns:minmax(0,1fr)}
.t2-newsgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
.t2-side{grid-template-columns:minmax(0,1fr)}
.t2-step{width:100%}
.t2-guide{max-width:760px}
.t2-guide-body{max-width:100%;font-size:16px;line-height:1.9}
.t2-faq{max-width:760px}
.t2-faq-q{font-size:16px;line-height:1.7}
.t2-faq-a{font-size:16px;line-height:1.9}
.t2-detail-block{padding:20px}
.t2-detail-block p{font-size:16px;line-height:1.9}
.t2-detail-block li{font-size:15px;line-height:1.85}
.t2-faq-item{padding:20px}
}
@media (max-width:640px){
.t2-quick4{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.t2-quick4-item{min-height:110px;padding:14px}
.t2-quick4-desc{margin-top:6px}
.t2-newsgrid{grid-template-columns:minmax(0,1fr)}
.t2-newscard{min-height:0}
.t2-bigcard{padding:16px}
.t2-hotrow{gap:10px}
/* 移动端约 2.2 张窄卡可见 */
.t2-hotcard{flex:0 0 calc((100% - 20px) / 2.2);min-width:120px}
.t2-legend,.t2-tips{padding:14px}
.t2-detail-meta{padding:14px}
.t2-detail-block{padding:16px}
.t2-endnote{padding:16px}
.t2-empty{padding:28px 16px}
.t2-faq-item{padding:16px}
.t2-cardgrid{gap:12px}
.t2-version-grid{gap:12px}
.t2-newsgrid{gap:12px}
}

/* ===== T2-02 施工校正块 1：页面 DOM 结构校正 =====
   1) .t2-rank 的子元素是 <a>（不是 <li>），本块补齐 a 的完整样式并关闭 li 计数；
   2) .t2-detail-meta 的直接子元素是 <span>，已在上方主题块定义，这里再兜底一次；
   3) .t2-faq-q 的序号由页面文案手写，不使用 CSS counter 编号；
   4) 面包屑分隔符若由文案手写（"›"），用下面的规则关掉自动插入的 "/"。
   ============================================================================== */
.t2-faq-q::before{content:none}
.t2-rank li{list-style:none;counter:none}
.t2-rank a{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 12px;border:1px solid #E3E8E6;border-radius:14px;background:#FFFFFF;font-size:14px;line-height:1.6;color:#44535A;transition:.2s}
.t2-rank a:hover{border-color:#0F766E;background:#F1F5F3;color:#0B5E58}
.t2-detail-meta>span{display:inline-flex;align-items:baseline;gap:6px}
.t2-crumb a+a::before{content:none}
.t2-crumb span.sep{color:#C7D2CF}

/* ===== T2-02 施工校正块 2：移动端表格卡片化 =====
   母站表格没有 <thead>，表头是一行裸 <tr><th>...</th></tr>。
   卡片化后 td 已用 data-label 显示列名，因此整行表头必须隐藏，否则移动端会出现两行重复列名。 */
@media (max-width:640px){
.table-wrap{border:0;background:transparent;border-radius:0}
.table-wrap .table{display:block;width:100%}
.table-wrap .table tr{display:block;border:1px solid #E3E8E6;border-radius:14px;margin-bottom:10px;padding:8px 10px;background:#FFFFFF}
.table-wrap .table td{display:flex;justify-content:space-between;gap:12px;border:0;padding:6px 0;text-align:right}
.table-wrap .table td:nth-child(n)::before{content:attr(data-label);flex:0 0 auto;text-align:left;color:#5D6B71;font-size:13px;font-weight:700}
.table-wrap .table td:not([data-label])::before{content:none}
.table-wrap .table tbody tr:hover td{background:transparent}
/* 母站表格没有 <thead>，表头是裸 <tr><th>…</th></tr>，卡片化后必须整行隐藏，否则出现两行重复列名 */
.table-wrap .table tr:first-child{display:none}
.table-wrap .table th{display:none}
}

/* ===== T2-02 施工校正块 3：可访问性对比度（WCAG AA，13px 文字需 ≥ 4.5:1） =====
   母站/设计 token 原值实测（保留不动，仅作装饰或非文字用途）：
     --t2-02-muted  #87969C   白底 3.06:1 / #F1F5F3 2.78:1 / #F7F6F2 2.83:1  → 不达标，禁止用于文字
     --t2-02-accent #EA580C   白底 3.56:1 / #F1F5F3 3.24:1 / #F7F6F2 3.29:1  → 不达标，禁止用于小字
     --t2-02-brand-2 #14B8A6 白字仅 2.49:1                              → 只作底色/装饰线，文字另配深墨
   另开一组「文字用」色阶（--t2-02-*-ink），实测对比度：
     --t2-02-muted-ink  #5D6B71  白底 5.52:1 / #F1F5F3 5.02:1 / #F7F6F2 5.10:1  ✅
     --t2-02-kicker-ink #0B5E58  白底 7.62:1 / #F1F5F3 6.93:1 / #F7F6F2 7.05:1  ✅
     --t2-02-accent-ink #A8430A  白底 6.05:1 / #F1F5F3 5.50:1 / #F7F6F2 5.59:1  ✅
     --t2-02-brand-ink  #0F766E  白底 5.47:1 / #F1F5F3 4.98:1 / #F7F6F2 5.06:1  ✅（品牌色本身即达标）
   状态标签四色（只用于文字标签底色），原 token 与加深后的实测：
     新开   token #15803D on #E6F4EA = 4.42:1 → 不达标，加深为 #14532D = 8.02:1  ✅
     流畅   token #1D4ED8 on #E6EDFB = 5.70:1 → 达标，保持不变 ✅
     火爆   token #C2410C on #FDEBE0 = 4.47:1 → 不达标，加深为 #A8390A = 5.57:1  ✅
     待开服 token #8A7B62 on #F1EDE4 = 3.53:1 → 不达标，加深为 #6B5D42 = 5.50:1  ✅
   其它：
     .score-pill 渐变 #0F766E → #0C7E75，白字最浅端 #0C7E75 = 4.93:1  ✅
     .t2-step-no / .t2-hot-no 底色 #14B8A6 配深墨 #06302C = 5.75:1  ✅
     .t2-faq-q 青色胶囊 #0B5E58 on #E6F2F1 = 6.65:1  ✅
     .t2-legend-list li::before 的 #14B8A6 是装饰圆点，不承载文字 ✅ */
:root{--t2-02-muted-ink:#5D6B71;--t2-02-kicker-ink:#0B5E58;--t2-02-accent-ink:#A8430A;--t2-02-brand-ink:#0F766E;--t2-02-ok-ink:#14532D;--t2-02-run-ink:#1D4ED8;--t2-02-hot-ink:#A8390A;--t2-02-wait-ink:#6B5D42}
/* 13px 辅助文字统一走 muted-ink */
.stat-box span,.server-version,.server-meta,.detail-meta,.w2-refresh-info,.w2-status-line,.w2-refresh-note,
.t2-step-desc,.t2-bigcard-ver,.t2-bigcard-meta,.t2-quick4-desc,.t2-version-fit,.t2-hot-meta,.t2-empty,
.t2-legend-title,.t2-crumb,.t2-readnote,.t2-h1-sub,.t2-sub,.t2-newscard-date,.footer-note,
.footer-links-label,.brand-sub,.table-wrap .table td:nth-child(n)::before{color:var(--t2-02-muted-ink)}
/* kicker / 强调短句 */
.hero-kicker{color:var(--t2-02-kicker-ink)}
.t2-faq-q>:first-child{color:var(--t2-02-kicker-ink)}
.t2-legend-title,.t2-detail-block-title,.t2-side-title{color:var(--t2-02-ink)}
/* 状态标签文字（加深后） */
.w2-status-new{color:var(--t2-02-ok-ink)}
.w2-status-smooth{color:var(--t2-02-run-ink)}
.w2-status-hot{color:var(--t2-02-hot-ink)}
.w2-status-pending{color:var(--t2-02-wait-ink)}
/* 橙色只留给「需要提醒的短句」，且用加深后的 accent-ink 保证 4.5:1 */
.t2-tips{border-left-color:var(--t2-02-brand-2)}
.t2-version-check strong{color:var(--t2-02-kicker-ink)}

/* ===== T2-02 施工校正块（总控追加） =====
   1) 全站 H1 字号统一：母站只给 .hero-copy h1 定了字号，其它页面的 <h1> 会退回浏览器默认 2em。
   2) 列表页"服务器名"是独立链接（不是句内行内链接），天然只有 ~21px 高，补足到 44px 触控目标。
   3) 正文段落里的链接只靠颜色区分会被判 link-in-text-block，加下划线。
   4) 资讯条目标题由 <h3> 改为 <h2> 后补 margin，保证与原外观一致。 */
.page-body .panel > h1,
.page-body .section-head h1{
  font-size:40px;
  line-height:1.2;
  margin:0 0 10px;
  color:#1F2A2E;
  font-weight:800;
  letter-spacing:.5px;
}
.table-wrap .table td:first-child a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  font-weight:700;
  color:#0F766E;
}
.t2-articlebody a{text-decoration:underline;text-underline-offset:3px;font-weight:600}
.t2-articlebody a:hover{text-decoration-thickness:2px}
.t2-newscard-title{margin:8px 0 0}
@media (max-width:640px){
  .page-body .panel > h1,
  .page-body .section-head h1{font-size:30px;line-height:1.25;letter-spacing:0}
  .hero-copy h1{font-size:30px;line-height:1.25}
}
/* ===== T2-02 施工校正块 2（总控追加） =====
   1) 页脚友链是独立链接（不是句内行内链接），母站样式只有 21px 高，
      低于设计稿"触控目标 ≥44px"与 WCAG 2.5.8 的 24px 下限，补足到 44px。
   2) 页面级 H1 的移动断点与首页 HERO 的 H1 对齐（≤768px 统一 30px）。 */
.footer-link{display:inline-flex;align-items:center;min-height:44px}
@media (max-width:768px){
  .page-body .panel > h1,
  .page-body .section-head h1{font-size:30px;line-height:1.25;letter-spacing:0}
}
/* ===== 可访问性校正：正文块内的行内链接不能只靠颜色区分（WCAG 1.4.1 / Lighthouse link-in-text-block） ===== */
.t2-article-body a,
.t2-guide-body a,
.t2-articlebody a,
.t2-faq-a a,
.t2-version-check a{text-decoration:underline;text-underline-offset:3px}