/* games.tianjie.me — 与 tianjie.me 同一套色板与字体 */
:root{--bg:#f3f4ef;--surface:#fbfbf8;--surface-2:#eceee6;--ink:#1c1e1a;--ink-2:#4c4f49;--muted:#7d817a;--line:#d8dad2;--line-2:#c5c8bf;--accent:#b5432c;--accent-ink:#fff;--shadow:0 14px 40px rgba(28,30,26,.12)}
@media (prefers-color-scheme:dark){:root{--bg:#16181b;--surface:#1e2125;--surface-2:#24282d;--ink:#ecebe4;--ink-2:#c3c4bd;--muted:#8b8e88;--line:#33373c;--line-2:#40454b;--accent:#e2694f;--accent-ink:#1a1a1a;--shadow:0 14px 40px rgba(0,0,0,.45)}}
[data-theme=dark]{--bg:#16181b;--surface:#1e2125;--surface-2:#24282d;--ink:#ecebe4;--ink-2:#c3c4bd;--muted:#8b8e88;--line:#33373c;--line-2:#40454b;--accent:#e2694f;--accent-ink:#1a1a1a;--shadow:0 14px 40px rgba(0,0,0,.45)}
[data-theme=light]{--bg:#f3f4ef;--surface:#fbfbf8;--surface-2:#eceee6;--ink:#1c1e1a;--ink-2:#4c4f49;--muted:#7d817a;--line:#d8dad2;--line-2:#c5c8bf;--accent:#b5432c;--accent-ink:#fff;--shadow:0 14px 40px rgba(28,30,26,.12)}
*{box-sizing:border-box}
html{color-scheme:light dark}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Noto Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit}
.wrap{max-width:1040px;margin:0 auto;padding:0 24px}
header.top{display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-bottom:1px solid var(--line)}
header.top .brand{font-family:"Noto Serif SC","Songti SC",serif;font-weight:700;font-size:18px;text-decoration:none;letter-spacing:.02em}
header.top .brand small{font-family:"Noto Sans SC",sans-serif;font-weight:400;color:var(--muted);margin-left:10px;font-size:13px}
header.top nav a{text-decoration:none;color:var(--ink-2);margin-left:18px;font-size:14px}
header.top nav a:hover{color:var(--accent)}
.hero{padding:56px 0 28px}
.kicker{color:var(--muted);font-size:13px;letter-spacing:.08em;text-transform:uppercase}
h1{font-family:"Noto Serif SC","Songti SC",serif;font-weight:900;font-size:44px;line-height:1.2;margin:8px 0 14px}
h2{font-family:"Noto Serif SC","Songti SC",serif;font-weight:700;font-size:26px;margin:48px 0 16px}
.lead{font-size:18px;color:var(--ink-2);max-width:720px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.card img{display:block;width:100%;height:auto}
.card .body{padding:22px 24px}
.card h3{font-family:"Noto Serif SC",serif;font-size:22px;margin:0 0 8px}
.card p{margin:0 0 12px;color:var(--ink-2)}
.tags{color:var(--muted);font-size:13px}
.btn{display:inline-block;padding:12px 22px;border-radius:999px;text-decoration:none;font-weight:500;border:1px solid var(--line-2);color:var(--ink);background:var(--surface)}
.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.btn:hover{filter:brightness(1.05)}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,560px));gap:18px}
.shots{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.shots img{width:100%;border-radius:10px;border:1px solid var(--line);image-rendering:auto}
.shots figcaption{font-size:13px;color:var(--muted);margin-top:4px}
table{border-collapse:collapse;width:100%;font-size:15px}
td,th{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{color:var(--muted);font-weight:500;white-space:nowrap}
.note{background:var(--surface-2);border-left:3px solid var(--accent);padding:12px 16px;border-radius:8px;color:var(--ink-2);font-size:15px}
footer{margin:64px 0 32px;color:var(--muted);font-size:13px;border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
footer a{color:var(--muted)}
.pixel{image-rendering:pixelated}
@media (max-width:640px){h1{font-size:32px}.hero{padding:36px 0 20px}}
