:root { --maxw: 980px; --pad: 18px; }
* { box-sizing: border-box; }
body { font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; margin: 0; color: #111; background: #fafafa; }
header { background: #fff; border-bottom: 1px solid #e6e6e6; }
.wrap { max-width: var(--maxw); margin: 0 auto; padding: 14px var(--pad); }
.brand { display:flex; align-items:center; gap:10px; }
.badge { width: 14px; height: 14px; border-radius: 3px; background: #ff8a00; display:inline-block; }
h1 { font-size: 22px; margin: 0; }
.sub { color:#555; margin-top: 6px; font-size: 14px; }
main { padding: 18px 0 42px; }
.card { background:#fff; border:1px solid #e9e9e9; border-radius: 14px; padding: 16px; box-shadow: 0 1px 8px rgba(0,0,0,.04); }
.grid { display:grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; padding: 12px 14px; border-radius: 12px; border:1px solid #e6e6e6; background:#fff; color:#111; text-decoration:none; font-weight: 600; }
.btn:hover { border-color:#d3d3d3; transform: translateY(-1px); transition: .12s ease; }
.kbd { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-size: 12px; padding: 2px 6px; border:1px solid #e6e6e6; border-radius: 6px; color:#444; background:#f7f7f7; }
.nav { display:flex; flex-wrap:wrap; gap:8px; margin-top: 10px; }
.small { font-size: 13px; color:#666; }
hr { border:0; border-top: 1px solid #eee; margin: 16px 0; }
footer { color:#777; font-size: 12px; padding: 18px 0; }
.notice { background:#fff7e6; border: 1px solid #ffd8a8; padding: 12px; border-radius: 12px; }
code { background:#f3f3f3; padding: 2px 6px; border-radius: 6px; }
pre { margin: 0; }
