
*,*::before,*::after{box-sizing:border-box}
:root{--font:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",system-ui,sans-serif;--mono:ui-monospace,SFMono-Regular,Consolas,monospace;
--bg:#fff6d6;--paper:#fff;--ink:#1b1740;--muted:#5b567d;--line:#1b1740;--soft:#fff0b8;--coral:#ff5a5f;--teal:#0fb5a6;--violet:#7a4dff;--sun:#ffcb2e;--link:#5a2fe0;--link-h:#3a17a8;--focus:#ff5a5f;--ok:#0b8f5c;--warn:#c24a00;--shadow:#1b1740}
[data-theme=dark]{--bg:#17133a;--paper:#241f55;--ink:#fff6d6;--muted:#c7c0f0;--line:#fff6d6;--soft:#2f2a6c;--coral:#ff7b7f;--teal:#3fd9c9;--violet:#a58bff;--sun:#ffcb2e;--link:#ffd75e;--link-h:#fff0a8;--focus:#ffcb2e;--ok:#5fe0a8;--warn:#ffb070;--shadow:#000}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.85 var(--font);overflow-wrap:anywhere;-webkit-font-smoothing:antialiased}
a{color:var(--link);text-underline-offset:3px}a:hover{color:var(--link-h)}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
h1,h2,h3{margin:0;line-height:1.3;color:var(--ink)}p{margin:0 0 1em}
code{font:.88em var(--mono);background:var(--soft);padding:.1em .4em;border-radius:5px}
pre{background:#1b1740;color:#ffeaa0;padding:14px 16px;border-radius:10px;overflow:auto;font:13.5px/1.6 var(--mono);border:2px solid var(--line)}pre code{background:none;color:inherit;padding:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip:focus{position:static;width:auto;height:auto;clip:auto;display:block;background:#fff;color:#000;padding:6px}
.wrap{width:min(1100px,100% - 32px);margin-inline:auto}
.tick{background:var(--ink);color:var(--sun);font:700 .8rem var(--mono);letter-spacing:.06em;overflow:hidden;white-space:nowrap}
.tick .wrap{display:flex;justify-content:space-between;gap:12px;padding:5px 0}.tick span:last-child{color:var(--paper)}
.hd{background:var(--sun);border-bottom:3px solid var(--line);position:sticky;top:0;z-index:40}
[data-theme=dark] .hd{background:#241f55}
.hd .wrap{display:flex;align-items:center;gap:14px;padding:10px 0}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);margin-right:auto}
.logo i{display:grid;place-items:center;width:44px;height:44px;background:var(--coral);color:#fff;border:3px solid var(--line);border-radius:14px;box-shadow:3px 3px 0 var(--shadow);font:900 1.5rem/1 var(--font);font-style:normal;transform:rotate(-6deg)}
.logo b{display:block;font:900 1.25rem var(--font)}.logo small{display:block;font:.72rem var(--font);color:var(--muted);line-height:1.2}
[data-theme=dark] .logo small{color:#c7c0f0}
.site-nav{display:flex;gap:6px;flex-wrap:wrap}
.site-nav a{color:var(--ink);text-decoration:none;padding:.25em .9em;font:800 .9rem var(--font);border:2px solid transparent;border-radius:999px}
.site-nav a:hover{border-color:var(--line);background:var(--paper);color:var(--ink)}
.site-nav a[aria-current]{background:var(--ink);color:var(--sun)}
[data-theme=dark] .site-nav a:hover{background:#3a3480}
.theme-btn,.nav-btn{font:800 .8rem var(--font);background:var(--paper);color:var(--ink);border:2px solid var(--line);border-radius:999px;padding:.2em .9em;cursor:pointer}
.nav-btn{display:none}
/* 首页 */
.hero{padding:34px 0 10px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:26px;align-items:center}
.hero h1{font-size:clamp(1.9rem,4.4vw,3rem);line-height:1.12;font-weight:900}
.hero h1 em{font-style:normal;background:var(--coral);color:#fff;padding:0 .2em;border-radius:10px;display:inline-block;transform:rotate(-2deg)}
.hero .lead{font-size:1.05rem;color:var(--muted);margin:.8em 0 1em}
.hero .ctas{display:flex;flex-wrap:wrap;gap:10px}
.stickers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.stk{display:block;text-decoration:none;color:var(--ink);background:var(--paper);border:3px solid var(--line);border-radius:18px;box-shadow:5px 5px 0 var(--shadow);padding:12px 14px;font:800 1rem var(--font)}
.stk small{display:block;font:.8rem var(--font);color:var(--muted);margin-top:2px}
.stk:nth-child(1){background:#ffe0e0;transform:rotate(-1.5deg)}.stk:nth-child(2){background:#d8f6f1;transform:rotate(1.2deg)}.stk:nth-child(3){background:#e8e0ff;transform:rotate(1deg)}.stk:nth-child(4){background:#fff0b8;transform:rotate(-1deg)}
[data-theme=dark] .stk{background:#2f2a6c!important;color:#fff6d6}
.stk:hover{transform:translate(-2px,-2px) rotate(0);color:var(--ink)}
.sec-h{font-size:1.5rem;font-weight:900;margin:1.8em 0 .7em;display:inline-block;background:var(--sun);border:3px solid var(--line);border-radius:12px;padding:.05em .7em;box-shadow:4px 4px 0 var(--shadow)}
[data-theme=dark] .sec-h{color:#17133a}
.scene-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin:0 0 1.2em}
.scene{display:block;text-decoration:none;color:var(--ink);background:var(--paper);border:3px solid var(--line);border-radius:16px;padding:12px 14px;box-shadow:4px 4px 0 var(--shadow)}
.scene:hover{transform:translate(-2px,-2px);color:var(--ink)}
.scene b{display:block;font-size:1.05rem}.scene span{display:block;font-size:.86rem;color:var(--muted);margin-top:2px}
.scene i{display:inline-block;font:800 .7rem var(--mono);font-style:normal;background:var(--teal);color:#fff;border-radius:999px;padding:0 .7em;margin-bottom:6px}
.scene:nth-child(3n+2) i{background:var(--coral)}.scene:nth-child(3n) i{background:var(--violet)}
.feat{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;background:#ffe36b;border:3px solid var(--line);border-radius:22px;box-shadow:6px 6px 0 var(--shadow);padding:20px 24px;margin:26px 0;color:#1b1740}
[data-theme=dark] .feat{background:#ffcb2e}
.feat-tag{display:inline-block;background:var(--coral);color:#fff;font:900 .78rem var(--font);border:2px solid #1b1740;border-radius:999px;padding:.1em .9em}
.feat-h{font-size:1.7rem;font-weight:900;margin:8px 0 4px;color:#1b1740}.feat-p{margin:0 0 8px}.feat-s{margin:8px 0 0;font-size:.86rem;color:#3b3560}
.feat-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.feat-list li{background:#fff;border:2px solid #1b1740;border-radius:999px;padding:.05em .8em;font-size:.88rem}
.feat-act{text-align:center}.feat-act small{display:block;margin-top:6px;font-size:.75rem;color:#3b3560}
/* 内页 */
.pg{padding:24px 0 54px}
.crumbs{font:.8rem var(--font);color:var(--muted);margin:0 0 12px}.crumbs a{color:var(--muted)}.crumbs i{font-style:normal;margin:0 .45em;opacity:.6}
.banner{background:var(--paper);border:3px solid var(--line);border-radius:22px;box-shadow:6px 6px 0 var(--shadow);padding:20px 24px;margin:0 0 22px;position:relative}
.banner::after{content:"";position:absolute;right:18px;top:-14px;width:46px;height:28px;background:var(--coral);border:3px solid var(--line);border-radius:8px;transform:rotate(8deg)}
.banner .kick{display:inline-block;font:800 .74rem var(--font);background:var(--teal);color:#fff;border-radius:999px;padding:0 .9em;margin:0 0 8px}
.banner h1{font-size:clamp(1.6rem,4.4vw,2.4rem);font-weight:900}
.banner .byline{font-size:.82rem;color:var(--muted);margin:8px 0 0}
.art{max-width:800px}
.body h2{font-size:1.35rem;font-weight:900;margin:1.7em 0 .5em;padding:.1em .6em;background:var(--soft);border-left:8px solid var(--coral);border-radius:0 10px 10px 0}
[data-theme=dark] .body h2{background:#2f2a6c}
.body h3{font-size:1.08rem;margin:1.2em 0 .3em;color:var(--violet)}
.lst{padding-left:1.4em;margin:0 0 1.1em}.lst li{margin:.3em 0}.lst li::marker{color:var(--coral)}
.bubble{background:var(--paper);border:3px solid var(--line);border-radius:20px 20px 20px 4px;padding:12px 18px;margin:0 0 1.3em;box-shadow:4px 4px 0 var(--shadow)}
.bubble b{display:inline-block;background:var(--coral);color:#fff;border-radius:999px;padding:0 .8em;font-size:.78rem;margin-right:.6em}
.tip{background:#d8f6f1;border:2px dashed var(--line);border-radius:12px;padding:8px 14px;margin:0 0 1.2em;font-size:.94rem;color:#1b1740}
.tip b{margin-right:.5em;color:#00796b}.tip.w{background:#ffe9d6}.tip.w b{color:#c24a00}
[data-theme=dark] .tip{background:#1f4f4a;color:#fff6d6}[data-theme=dark] .tip.w{background:#5a3a22}
.tbl-wrap{overflow-x:auto;margin:0 0 1.4em;border:3px solid var(--line);border-radius:14px;background:var(--paper)}
.tbl{width:100%;border-collapse:collapse;font-size:.92rem;min-width:520px}
.tbl th,.tbl td{padding:8px 12px;text-align:left;vertical-align:top;border-bottom:1px solid #d9d2f5}
.tbl thead th{background:var(--sun);color:#1b1740;font-weight:900;white-space:nowrap}.tbl tbody th{white-space:nowrap}.tbl tr:last-child>*{border-bottom:0}
.tbl.wide{min-width:820px}
.pill{display:inline-block;font-size:.72rem;padding:.05em .6em;border:2px solid var(--line);border-radius:999px;white-space:nowrap}
.pill-ok{background:var(--ok);color:#fff;border-color:transparent}.pill-conflict{background:var(--warn);color:#fff;border-color:transparent}.pill-gap,.pill-none{color:var(--muted);border-style:dashed}
.dimtable td,.dimtable th{text-align:center}.dimtable tbody th{text-align:left}
.steps{margin:0 0 1.3em;padding:0;list-style:none;counter-reset:s}
.steps li{padding:0 0 12px 3.2em;position:relative;counter-increment:s}
.steps li::before{content:counter(s);position:absolute;left:0;top:0;width:2.1em;height:2.1em;border-radius:50%;background:var(--violet);color:#fff;border:2px solid var(--line);display:grid;place-items:center;font:900 .95rem var(--font)}
.steps h3{margin:0 0 2px!important;font-size:1.02rem;color:var(--ink)}.steps p{margin:0}.steps pre{margin-top:6px}.step-note{font-size:.88rem;color:var(--muted)}
.faq{margin:1.6em 0 1em}.faq>h2{margin-bottom:10px}
.faq details{background:var(--paper);border:2px solid var(--line);border-radius:14px;margin:0 0 10px;padding:0 14px}.faq summary{cursor:pointer;padding:10px 0;font-weight:800}.faq details p{margin:0 0 10px;color:var(--muted)}
.ctabox{background:var(--paper);border:3px solid var(--line);border-radius:18px;box-shadow:4px 4px 0 var(--shadow);padding:16px 18px;margin:1.4em 0;text-align:center}
.ctabox-t{font-weight:800;margin:0 0 10px}.bc-disc{display:block;font-size:.78rem;color:var(--muted);margin-top:8px}
.btn{display:inline-flex;align-items:center;padding:.5em 1.3em;background:var(--violet);color:#fff;font:800 .92rem var(--font);text-decoration:none;border:3px solid var(--line);border-radius:999px;box-shadow:3px 3px 0 var(--shadow);cursor:pointer}
.btn:hover{transform:translate(-1px,-1px);color:#fff}.btn-aff{background:var(--coral)}.btn-lg{padding:.7em 1.7em;font-size:1rem}.btn-ghost{background:var(--paper);color:var(--ink)}.btn-ghost:hover{color:var(--ink)}
.linkcards{list-style:none;margin:0 0 1.2em;padding:0;display:grid;gap:10px}
.linkcards li{background:var(--paper);border:2px solid var(--line);border-radius:14px;padding:9px 14px}.linkcards a{font-weight:800}.linkcards span{display:block;font-size:.85rem;color:var(--muted)}
.cross{border:2px dashed var(--line);border-radius:12px;padding:9px 14px;margin:0 0 1.2em;font-size:.92rem}.cross-lead{color:var(--muted);margin-right:.5em}
.chips{list-style:none;margin:0 0 1.2em;padding:0;display:flex;flex-wrap:wrap;gap:8px}.chips li{background:var(--paper);border:2px solid var(--line);border-radius:999px;padding:.05em .9em;font-size:.9rem}
.next{margin-top:32px;background:var(--soft);border:3px solid var(--line);border-radius:18px;padding:12px 18px;font-size:.92rem}
.next h2{font:900 1rem var(--font);margin:0 0 6px}.next ul{list-style:none;margin:0;padding:0}.next li{padding:3px 0}
.bc-list{display:grid;gap:14px;margin:0 0 1.4em}
.bc{background:var(--paper);border:3px solid var(--line);border-radius:18px;box-shadow:4px 4px 0 var(--shadow);padding:14px 18px}
.bc.is-top{background:#fff3b0;color:#1b1740}
[data-theme=dark] .bc.is-top{background:#3d3679;color:#fff6d6}
.bc h3{font-size:1.1rem;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.bc h3 small{color:var(--muted);font-weight:400}
.bc .fig{display:inline-grid;place-items:center;min-width:2em;height:2em;border-radius:50%;background:var(--teal);color:#fff;border:2px solid var(--line);font:900 .82rem var(--font)}
.bc .badge{font:900 .72rem var(--font);background:var(--coral);color:#fff;border:2px solid var(--line);border-radius:999px;padding:0 .8em}
.bc-tag{margin:.3em 0 .5em;color:var(--muted);font-size:.92rem}.bc.is-top .bc-tag{color:#4a4370}
[data-theme=dark] .bc.is-top .bc-tag{color:#d6d0f7}
.bc .obs{font-size:.86rem;border-top:2px dotted var(--line);padding-top:6px;margin:0 0 .6em}
.bc-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.ft{border-top:3px solid var(--line);background:var(--sun);padding:24px 0 28px;font-size:.86rem;color:#1b1740;margin-top:10px}
[data-theme=dark] .ft{background:#241f55;color:#c7c0f0}
.ft ul{list-style:none;padding:0;margin:0 0 10px;display:flex;flex-wrap:wrap;gap:6px 16px}.ft a{color:inherit;font-weight:800}.ft p{margin:0 0 6px}
.notfound{text-align:center;padding:80px 0}.notfound b{display:block;font:900 5rem/1 var(--font);color:var(--coral)}
@media(max-width:900px){.hero,.feat{grid-template-columns:minmax(0,1fr)}}
@media(max-width:820px){.site-nav{display:none;width:100%;order:9}.site-nav.open{display:flex;flex-direction:column}.hd .wrap{flex-wrap:wrap}.nav-btn{display:inline-block}}
@media(max-width:700px){.tbl-wrap::after{content:"← 左右滑动查看完整表格 →";display:block;position:sticky;left:0;width:calc(100vw - 34px);box-sizing:border-box;text-align:center;font-size:.72rem;padding:5px 0;opacity:.75}}
.friend-links{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;border-top:1px solid var(--line);padding:18px 0;margin:24px 0 16px}
.friend-links .label{font-weight:700;font-size:.88rem;color:var(--muted);margin-right:4px}
.friend-links a{font-size:.88rem;color:var(--muted);text-decoration:none}
.friend-links a:hover{color:var(--link);text-decoration:underline}
