/* source.html (standalone page; follows the system colour scheme) */
:root { --s-bg:#f5f5f6; --s-surface:#fff; --s-ink:#1a1b1f; --s-muted:#61646c; --s-line:#e4e5e9; --s-accent:#0b6a70; --s-btn:#0b6a70; --s-btn-ink:#fff; }
@media (prefers-color-scheme: dark) { :root { --s-bg:#121316; --s-surface:#1a1b1f; --s-ink:#ededf0; --s-muted:#a2a5af; --s-line:#2b2d34; --s-accent:#55c4c9; --s-btn:#55c4c9; --s-btn-ink:#062a2c; } }
html { background: var(--s-bg); }
body { background: var(--s-bg); color: var(--s-ink); font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "HarmonyOS Sans SC", "Noto Sans SC", "Noto Sans CJK SC", "Microsoft YaHei", sans-serif; font-size: 15px; line-height: 1.75; font-variant-numeric: tabular-nums; -webkit-font-smoothing: antialiased; }
main { max-width: 720px; margin: 0 auto; padding: 24px 20px calc(72px + env(safe-area-inset-bottom)); }
nav { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 28px; }
nav a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; border: 1px solid var(--s-line); border-radius: 10px; background: var(--s-surface); color: var(--s-ink); font-size: 14px; font-weight: 550; text-decoration: none; transition: border-color .15s; }
nav a:hover { border-color: var(--s-ink); }
nav a:first-child::before { content: "←"; margin-right: 6px; color: var(--s-muted); }
h1 { font-size: clamp(26px, 5vw, 30px); font-weight: 650; letter-spacing: -.015em; margin: 0 0 8px; line-height: 1.3; }
h1 + p { color: var(--s-muted); font-size: 13px; font-family: "JetBrains Mono", ui-monospace, monospace; margin: 0 0 20px; }
h2 { font-size: 18px; font-weight: 650; margin: 0 0 12px; letter-spacing: -.01em; }
p { margin: 0 0 12px; max-width: 38em; }
a { color: var(--s-accent); text-underline-offset: 3px; }
a.download { display: inline-flex; align-items: center; min-height: 46px; padding: 0 20px; border-radius: 10px; background: var(--s-btn); color: var(--s-btn-ink); font-weight: 600; text-decoration: none; }
a.download:hover { filter: brightness(1.08); }
.muted { color: var(--s-muted); font-size: 13px; }
section { background: var(--s-surface); border: 1px solid var(--s-line); border-radius: 14px; padding: 22px 22px 14px; margin-top: 20px; }
ul { margin: 0 0 12px; padding: 0; list-style: none; display: grid; gap: 2px; }
li a { display: block; padding: 8px 0; border-bottom: 1px solid var(--s-line); text-decoration: none; }
li a:hover { text-decoration: underline; }
:focus-visible { outline: 2px solid var(--s-accent); outline-offset: 2px; border-radius: 6px; }
