:root{
  color-scheme: dark;
  --ground:#0F1117; --panel:#171A22; --panel2:#1E222C; --line:#2A303C; --line2:#3B4252;
  --text:#ECE8DF; --muted:#8D94A3; --accent:#F2B544; --ink:#17130A;
  --sans:"Zen Kaku Gothic New","Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  --display:"Dela Gothic One","Zen Kaku Gothic New","Hiragino Sans",sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
}
*{box-sizing:border-box}
html,body{background:var(--ground);color:var(--text)}
body{margin:0;font-family:var(--sans);font-size:15px;line-height:1.85;padding-inline:16px}
a{color:var(--accent)}
.wrap{max-width:760px;margin:0 auto;padding-block:20px 48px}
.top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:28px}
.logo{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font-family:var(--display);font-size:20px}
.logo .mark{display:inline-grid;grid-template-columns:repeat(3,6px);gap:2px}
.logo .mark i{width:6px;height:6px;border-radius:1.5px;background:var(--line2)}
.logo .mark i.o{background:var(--accent)}
.logo small{font-family:var(--sans);font-weight:700;font-size:12px;letter-spacing:.08em;color:var(--accent);border:1px solid rgba(242,181,68,.45);border-radius:6px;padding:1px 7px}
.cta{display:inline-flex;align-items:center;height:38px;padding:0 16px;border-radius:10px;background:var(--accent);color:var(--ink);font-weight:700;text-decoration:none;font-size:14px}
h1{font-size:26px;line-height:1.4;margin:0 0 8px;text-wrap:balance}
h2{font-size:18px;margin:36px 0 8px;padding-top:4px;text-wrap:balance}
h3{font-size:15px;margin:22px 0 4px}
p,li{color:#D6D2C8;max-width:65ch}
.lead{color:var(--muted);margin-top:0}
.muted{color:var(--muted);font-size:13px}
ul,ol{padding-left:1.4em}
li{margin:4px 0}
code,kbd{font-family:var(--mono);font-size:13px;background:var(--panel2);border:1px solid var(--line2);border-radius:5px;padding:0 5px}
table{border-collapse:collapse;width:100%;font-size:14px;margin:10px 0}
th,td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
th{background:var(--panel);font-weight:700;white-space:nowrap}
.tablewrap{overflow-x:auto}
.box{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin:16px 0}
footer{border-top:1px solid var(--line);margin-top:48px;padding-top:16px;display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:space-between;color:var(--muted);font-size:13px}
footer nav{display:flex;flex-wrap:wrap;gap:6px 16px}
footer a{color:var(--muted)}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
