:root { color-scheme: light; font-family: system-ui, "Microsoft YaHei", sans-serif; color: #222; background: #fafafa; }
* { box-sizing: border-box; }
body { margin: 0; }
a { color: inherit; }
.site-header { border-bottom: 1px solid #ddd; padding: 18px max(20px, calc((100% - 1100px) / 2)); }
.site-name { display: block; margin-bottom: 16px; text-decoration: none; font-weight: 600; }
nav { display: flex; gap: 20px; flex-wrap: wrap; }
nav a { text-decoration: none; padding: 5px 0; }
nav a[aria-current="page"] { border-bottom: 2px solid currentColor; }
main { width: min(1100px, calc(100% - 40px)); margin: 36px auto; }
h1 { font-size: 25px; font-weight: 500; margin: 0 0 28px; }
h2 { font-size: 18px; font-weight: 500; }
.form { display: grid; gap: 12px; max-width: 520px; }
input, textarea, button { font: inherit; }
input:not([type="radio"]), textarea { width: 100%; padding: 10px; border: 1px solid #aaa; background: white; border-radius: 3px; }
textarea { resize: vertical; }
fieldset { margin: 0; border: 1px solid #ccc; padding: 12px; }
fieldset label { display: inline-block; margin-right: 16px; }
output { text-align: right; color: #555; font-size: 13px; }
button { justify-self: start; padding: 8px 24px; cursor: pointer; }
.notice { border: 1px solid #ccc; padding: 12px; max-width: 520px; }
.release { border-bottom: 1px solid #ddd; padding: 12px 0 24px; }
dl { display: grid; grid-template-columns: 70px 1fr; gap: 8px; }
dd { margin: 0; }
[hidden] { display: none !important; }
:focus-visible { outline: 2px solid #315d9e; outline-offset: 3px; }
@media (max-width: 600px) { nav { gap: 10px 18px; } main { margin-top: 26px; } }
