:root {
  --bg: #ffffff;
  --fg: #1f2328;
  --muted: #59636e;
  --rule: #d1d9e0b3;
  --link: #0969da;
  --font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif;
  color-scheme: light;
}
body { background: var(--bg); color: var(--fg); font-family: var(--font-body); font-size: 16px; line-height: 1.5; word-wrap: break-word; margin: 0; }
a { color: var(--link); }
.markdown-body { padding-inline: 34px; padding-block: 32px 48px; max-width: 1012px; margin: 0 auto; }
h1, h2, h3 { font-weight: 600; line-height: 1.25; margin: 24px 0 16px; text-wrap: balance; }
h1 { font-size: 2em; margin-top: 0; padding-bottom: 0.3em; border-bottom: 1px solid var(--rule); }
h2 { font-size: 1.5em; padding-bottom: 0.3em; border-bottom: 1px solid var(--rule); }
p { margin: 0 0 16px; }
ul, ol { margin: 0 0 16px; padding-left: 2em; }
li + li { margin-top: 0.25em; }
table { border-collapse: collapse; width: 100%; margin: 0; font-size: 14px; }
th, td { border: 1px solid #d1d9e0; padding: 6px 13px; text-align: left; vertical-align: top; }
th { background: #f6f8fa; font-weight: 600; }
tr:nth-child(2n) td { background: #f6f8fa; }
td.n { color: var(--muted); white-space: nowrap; }
.sub { color: var(--muted); margin-top: -8px; }
.verdict { border: 1px solid #e6c35c; background: #fff8c5; border-radius: 6px; padding: 12px 16px; margin: 0 0 16px; }
.verdict p { margin: 0; }
.verdict p + p { margin-top: 6px; }
.glance { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; margin: 0 0 16px; }
.glance div { border: 1px solid #d1d9e0; border-radius: 6px; padding: 10px 14px; }
.glance b { display: block; font-size: 1.35em; line-height: 1.3; }
.glance span { color: var(--muted); font-size: 14px; }
.toc { font-size: 15px; columns: 2; column-gap: 32px; }
.toc li { break-inside: avoid; }
.tablewrap { overflow-x: auto; margin: 0 0 16px; }
.st { display: inline-block; font-size: 12px; font-weight: 600; padding: 1px 8px; border-radius: 2em; white-space: nowrap; border: 1px solid; }
.st-main { color: #0969da; border-color: #9cd0ff; background: #ddf4ff; }
.st-partial { color: #9a6700; border-color: #e6c35c; background: #fff8c5; }
.st-no { color: #59636e; border-color: #d1d9e0; background: #f6f8fa; }
.st-ok { color: #1a7f37; border-color: #8ddb8c; background: #dafbe1; }
.st-high { color: #bc4c00; border-color: #ffb77c; background: #fff1e5; }
@media (max-width: 600px) {
  .markdown-body { padding-inline: 16px; padding-block: 24px 40px; }
  h1 { font-size: 1.6em; }
  h2 { font-size: 1.3em; }
  .toc { columns: 1; }
}
