:root{--bg:#0b1020;--ink:#e8ecff;--card:#111735;--muted:#bcd0ff;--line:#223}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:var(--bg);color:var(--ink);font-family:"Noto Sans JP",system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.8}
a{color:#cfe0ff}
.container{max-width:980px;margin:0 auto;padding:20px}
.site-header{border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(11,16,32,.92);backdrop-filter:blur(4px);}
.brand{font-weight:800;font-size:20px;margin-right:16px;color:#fff;text-decoration:none}
.nav a{margin-right:14px}
.site-main{padding:24px 0}
.site-footer{border-top:1px solid var(--line);margin-top:40px}
.footer-grid{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.h1{font-size:28px;margin:0 0 10px}
.h2{font-size:20px;margin:24px 0 8px}
.lead{font-size:18px;color:#dfe8ff}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:14px}
.card{display:block;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;text-decoration:none;color:var(--ink)}
.list{padding-left:18px}
.def{display:grid;grid-template-columns:160px 1fr;gap:8px}
.notice{background:#0f1638;border:1px solid #2a3b7a;border-radius:10px;padding:12px}
.muted{color:#9fb2d9}
hr{border:0;border-top:1px solid var(--line);margin:20px 0}
table{border-collapse:collapse;width:100%;background:rgba(255,255,255,0.02)}
th,td{border:1px solid #2a3357;padding:8px;vertical-align:top}
pre{white-space:pre-wrap;text-wrap:wrap;overflow-wrap:anywhere}
