:root { --paper:#FAF7F2; --ink:#2B2A28; --grey:#8C8C8C; --green:#2FA88C; --coral:#E8735A; --purple:#6C5CE7; }
* { box-sizing: border-box; }
body { margin:0; font-family: -apple-system, "Hiragino Sans", "Helvetica Neue", Arial, sans-serif; color:var(--ink); background:var(--paper);
  background-image: radial-gradient(rgba(140,140,140,.18) 1.5px, transparent 1.6px); background-size: 24px 24px; line-height:1.7; }
main { max-width: 760px; margin: 0 auto; padding: 48px 20px 80px; }
header { display:flex; align-items:center; gap:14px; margin-bottom: 28px; }
header img { width:64px; height:64px; border-radius:16px; box-shadow: 0 6px 18px rgba(0,0,0,.12); }
header .name { font-size: 26px; font-weight: 800; }
header .tag { color: var(--grey); font-size: 14px; }
nav a { margin-right: 16px; color: var(--purple); font-weight: 600; text-decoration: none; }
h1 { font-size: 28px; margin: 32px 0 8px; } h2 { font-size: 20px; margin: 28px 0 6px; border-left: 6px solid var(--green); padding-left: 12px; }
h3 { font-size: 16px; margin: 20px 0 4px; }
p, li { font-size: 15px; } .muted { color: var(--grey); font-size: 13px; }
.card { background:#fff; border-radius: 16px; padding: 18px 20px; box-shadow: 0 4px 14px rgba(0,0,0,.06); margin: 14px 0; }
.lang { float:right; font-size: 13px; } .lang a { color: var(--purple); margin-left: 8px; }
table { border-collapse: collapse; width: 100%; font-size: 14px; } td, th { border-bottom: 1px solid #eee; padding: 8px 6px; text-align: left; vertical-align: top; }
footer { margin-top: 48px; color: var(--grey); font-size: 12px; }
