/* 浅色格纹纸 + 贴纸硬偏移阴影 + 黄色只标可行动（作者已确认的画面方向） */
:root{
  --paper:#faf6ec; --grid:#efe6d3; --ink:#2f2a24; --mute:#7d7365;
  --sticker:#ffffff; --edge:#2f2a24; --act:#ffd93d; --act-ink:#2f2a24;
  --live:#3f8f5f; --reserve:#c98a2b; --upcoming:#9a9084;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; color:var(--ink); font:16px/1.75 -apple-system,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  background:var(--paper)
    repeating-linear-gradient(0deg,transparent 0 27px,var(--grid) 27px 28px)
    repeating-linear-gradient(90deg,transparent 0 27px,var(--grid) 27px 28px);
}
a{color:inherit}
main{max-width:920px;margin:0 auto;padding:0 18px 64px}

/* 顶栏 */
.top{position:sticky;top:0;z-index:9;display:flex;align-items:center;gap:14px;
  padding:12px 18px;background:var(--paper);border-bottom:2px solid var(--edge)}
.brand{display:flex;align-items:center;gap:9px;text-decoration:none;font-weight:700}
.mark{display:grid;place-items:center;width:30px;height:30px;background:var(--act);
  border:2px solid var(--edge);box-shadow:3px 3px 0 var(--edge);font-size:15px}
.bt{font-size:15px;letter-spacing:.5px}
nav{margin-left:auto;display:flex;gap:6px}
nav a{padding:5px 11px;text-decoration:none;font-size:14px;border:2px solid transparent}
nav a:hover{border-color:var(--edge);background:var(--sticker)}

/* 首屏 */
.hero{margin:34px 0 8px;padding:26px 24px;background:var(--sticker);
  border:2px solid var(--edge);box-shadow:6px 6px 0 var(--edge)}
.hero h1{margin:0 0 8px;font-size:clamp(22px,5.4vw,31px);line-height:1.35}
.hero p{margin:0 0 16px;color:var(--mute);max-width:60ch}
.qq{display:inline-block;padding:9px 16px;font-weight:700;text-decoration:none;
  border:2px solid var(--edge);background:var(--act);color:var(--act-ink);box-shadow:4px 4px 0 var(--edge)}
.qq.wait{background:transparent;color:var(--mute);box-shadow:none;border-style:dashed;font-weight:600}

/* 分组与卡片 */
.grp{margin:34px 0 0}
.grp h2{display:flex;align-items:baseline;gap:10px;margin:0 0 14px;font-size:19px;
  padding-bottom:7px;border-bottom:2px solid var(--edge)}
.cnt{font-size:13px;color:var(--mute);font-weight:400}
.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(255px,1fr))}
.card{padding:16px 16px 14px;background:var(--sticker);border:2px solid var(--edge);
  box-shadow:5px 5px 0 var(--edge);display:flex;flex-direction:column;gap:9px}
.card h3{margin:0;font-size:17px;line-height:1.4}
.card h3 a{text-decoration:none}
.card h3 a:hover{text-decoration:underline;text-underline-offset:3px}
.sum{margin:0;font-size:14px;color:var(--mute);line-height:1.65;flex:1}
.meta{display:flex;flex-wrap:wrap;gap:7px;align-items:center;font-size:12px}
.tag{padding:2px 8px;border:1.5px solid var(--edge);font-weight:700;font-size:11.5px;background:var(--sticker)}
.tag.live{color:var(--live)}.tag.reserve{color:var(--reserve)}.tag.upcoming{color:var(--upcoming)}
.id,.src{color:var(--mute);font-variant-numeric:tabular-nums}
.acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:2px}
.acts a{padding:6px 13px;font-size:13.5px;font-weight:700;text-decoration:none;
  border:2px solid var(--edge);box-shadow:3px 3px 0 var(--edge)}
.acts a:hover{transform:translate(1px,1px);box-shadow:2px 2px 0 var(--edge)}
.acts .play{background:var(--act);color:var(--act-ink)}
.acts .g{background:var(--sticker)}

/* 详情页 */
.detail{margin-top:26px;padding:26px 24px;background:var(--sticker);
  border:2px solid var(--edge);box-shadow:6px 6px 0 var(--edge)}
.crumb{font-size:13.5px;margin-bottom:14px}
.crumb a{text-decoration:none;border-bottom:1.5px solid var(--mute)}
.detail h1{margin:0 0 10px;font-size:clamp(21px,5vw,28px);line-height:1.35}
.stat{display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:12.5px;color:var(--mute);margin:0 0 14px}
.links{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-wrap:wrap;gap:8px}
.links li a{padding:6px 12px;font-size:13.5px;font-weight:700;text-decoration:none;
  border:2px solid var(--edge);box-shadow:3px 3px 0 var(--edge);background:var(--act);color:var(--act-ink)}
.note{padding:12px 14px;border-left:4px solid var(--reserve);background:#fff8e6;font-size:14.5px}
.toc{margin:0 0 20px;padding:11px 14px;border:1.5px dashed var(--mute);font-size:14px}
.toc summary{cursor:pointer;font-weight:700}
.toc ul{list-style:none;padding-left:0;margin:9px 0 0;max-height:300px;overflow:auto}
.toc .l2{padding-left:0}.toc .l3{padding-left:15px;font-size:13.5px;color:var(--mute)}

/* 攻略正文排版 */
.detail h2{margin:34px 0 10px;padding-bottom:6px;font-size:20px;border-bottom:1.5px solid var(--grid)}
.detail h3{margin:24px 0 8px;font-size:17px}
.detail p{margin:11px 0}
.detail ul,.detail ol{margin:11px 0;padding-left:23px}
.detail li{margin:5px 0}
blockquote{margin:15px 0;padding:11px 15px;border-left:4px solid var(--act);
  background:#fdf7e4;font-size:15px}
blockquote p{margin:5px 0}
code{font:13.5px/1.6 ui-monospace,Consolas,monospace;background:#f0e9db;padding:1px 5px;border-radius:3px}
pre.code{margin:15px 0;padding:13px 15px;overflow:auto;background:#2f2a24;color:#f6f0e2;
  border:2px solid var(--edge);box-shadow:4px 4px 0 var(--edge)}
pre.code code{background:none;color:inherit;padding:0;font-size:13px}
hr{margin:28px 0;border:0;border-top:1.5px dashed var(--mute)}
.tablewrap{margin:16px 0;overflow-x:auto}
table{border-collapse:collapse;width:100%;font-size:14px;min-width:520px}
th,td{border:1.5px solid var(--edge);padding:7px 10px;text-align:left;vertical-align:top}
th{background:#f3ecdd;font-weight:700;white-space:nowrap}
tbody tr:nth-child(even){background:#fbf7ee}

/* 页脚 */
.foot{margin-top:44px;padding:22px 18px;border-top:2px solid var(--edge);
  text-align:center;font-size:13.5px;color:var(--mute)}
.foot p{margin:4px 0}
.mute{color:var(--mute)}

/* 卡片配图：真图 or 字面瓷砖，同一尺寸保证网格不散 */
.cardtop{display:flex;gap:11px;align-items:flex-start}
.card .art{width:56px;height:56px;flex:0 0 56px;object-fit:cover;display:block;
  border:2px solid var(--edge);box-shadow:3px 3px 0 var(--edge)}
.card .art.mono{display:grid;place-items:center;background:var(--paper);
  font-size:26px;font-weight:700;color:var(--mute);line-height:1}
.card .head{min-width:0;flex:1}
.card h3{margin:0 0 4px;font-size:16.5px}
.card .sum{margin:6px 0 0}

@media (max-width:560px){
  .top{flex-wrap:wrap}
  nav{margin-left:0;width:100%}
  .detail,.hero{padding:20px 16px}
  .grid{grid-template-columns:1fr}
}

/* ---------- 厂商层（2026-09-21 加：对标大厂官网的首页结构） ---------- */
.skip{position:absolute;left:-9999px;top:0;background:var(--act);color:var(--act-ink);
  padding:8px 14px;z-index:20;border:2px solid var(--edge)}
.skip:focus{left:8px;top:8px}
.top .logoimg{width:34px;height:34px;object-fit:contain;display:block}
nav a.on{border-color:var(--edge);background:var(--sticker)}

.hero{padding:30px 26px}
.hero .byline{margin:0 0 6px;font-size:13px;letter-spacing:.14em;color:var(--mute);text-transform:uppercase}
.hero .lead{font-size:17px;color:var(--ink);max-width:52ch;margin:0 0 18px;line-height:1.7}
.qqbox{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;
  padding:11px 14px;border:2px solid var(--edge);background:#fff8e6;box-shadow:4px 4px 0 var(--edge)}
.qqlead{font-size:13px;font-weight:700;color:var(--mute)}
.qqnum{font-size:19px;font-weight:700;letter-spacing:.06em;background:var(--act);color:var(--act-ink);
  padding:2px 10px;border:2px solid var(--edge);font-family:ui-monospace,Consolas,monospace;user-select:all}
.qqhow{font-size:12.5px;color:var(--mute)}
.more{display:inline-block;font-size:14px;font-weight:700;color:var(--ink)}

.kpis{display:flex;gap:10px;margin:18px 0 0;flex-wrap:wrap}
.kpis div{flex:1;min-width:110px;padding:14px 10px;text-align:center;background:var(--sticker);
  border:2px solid var(--edge);box-shadow:4px 4px 0 var(--edge)}
.kpis b{display:block;font-size:26px;line-height:1.1;font-variant-numeric:tabular-nums}
.kpis span{font-size:12.5px;color:var(--mute)}

.strip{margin:34px 0 0;padding:20px 22px;background:var(--sticker);border:2px solid var(--edge);
  box-shadow:5px 5px 0 var(--edge)}
.strip h2{margin:0 0 10px;font-size:17px}
.news{list-style:none;padding:0;margin:0}
.news li{padding:6px 0;border-bottom:1px dashed var(--grid);font-size:14.5px}
.news li:last-child{border-bottom:0}
.news a{text-decoration:none;font-weight:700}
.news a:hover{text-decoration:underline;text-underline-offset:3px}

.page{margin:26px 0;padding:28px 26px;background:var(--sticker);border:2px solid var(--edge);
  box-shadow:6px 6px 0 var(--edge)}
.page h1{margin:0 0 8px;font-size:clamp(22px,5.2vw,30px)}
.page .lead{color:var(--mute);font-size:15.5px;margin:0 0 20px;max-width:64ch}
.page h2{margin:28px 0 10px;padding-bottom:6px;border-bottom:1.5px solid var(--grid);font-size:19px}
.page p{margin:11px 0;line-height:1.8}
.page .note{margin-top:18px;padding:11px 14px;border-left:4px solid var(--reserve);background:#fff8e6;font-size:14px}
.wordmark{margin:0 0 22px;padding:18px;border:1.5px dashed var(--mute);text-align:center}
.wordmark img{max-width:100%;height:auto}
.wordmark figcaption,.pressgrid figcaption{font-size:12.5px;color:var(--mute);margin-top:7px}
.story p{padding-left:14px;border-left:3px solid var(--act);margin:10px 0}
table.facts{width:100%;border-collapse:collapse;font-size:14px;min-width:0}
table.facts th{text-align:left;white-space:nowrap;vertical-align:top;width:7.5em;background:none;border:0;
  border-bottom:1px solid var(--grid);padding:8px 12px 8px 0;font-weight:700}
table.facts td{border:0;border-bottom:1px solid var(--grid);padding:8px 0;vertical-align:top}
table.facts .src{color:var(--mute);font-size:12px;padding-left:12px;width:12em;text-align:right}
.todo{padding-left:20px}.todo li{margin:5px 0;font-size:14.5px}
.pressgrid{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start}
.pressgrid figure{margin:0;padding:14px;border:1.5px solid var(--edge);background:var(--paper)}
.pressgrid img{display:block;max-width:100%;height:auto}
.foot .legal{margin-top:10px;font-size:12.5px}
.foot .legal a{color:var(--mute)}
.foot .qqbox{justify-content:center;margin:0 auto 12px;max-width:420px}
@media (max-width:560px){
  .page{padding:20px 16px}
  table.facts .src{display:block;text-align:left;padding:2px 0 8px;width:auto;color:var(--mute)}
  .kpis div{min-width:88px}
}
