
:root { --bg: #0f172a; --text: #e5e7eb; --muted: #94a3b8; --brand:#2563eb; --card:#111827; }
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;line-height:1.6}
a{color:var(--text);text-decoration:none}
a:hover{opacity:.85}
.container{max-width:1080px;margin:0 auto;padding:24px}
header,footer{background:rgba(255,255,255,.02);backdrop-filter:saturate(140%) blur(6px)}
nav{display:flex;gap:12px;align-items:center;justify-content:space-between}
.nav-links{display:flex;gap:16px;flex-wrap:wrap}
.btn{display:inline-block;background:var(--brand);color:#fff;padding:10px 16px;border-radius:10px;font-weight:600}
.btn-outline{border:1px solid #334155;border-radius:10px;padding:10px 16px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.card{background:var(--card);border:1px solid #1f2937;border-radius:14px;padding:18px}
.muted{color:var(--muted)}
.hero{padding:48px 0}
.hero h1{font-size:40px;margin:0 0 8px}
.hero p{margin:0 0 16px}
.logo{display:flex;align-items:center;gap:10px}
hr{border:none;border-top:1px solid #1f2937;margin:24px 0}
.kbd{font-family: ui-monospace,SFMono-Regular,Menlo,monospace;background:#0b1220;border:1px solid #1f2937;border-radius:6px;padding:2px 6px}
