:root{--bg:#0b0f14;--card:#111826;--text:#e6edf3;--muted:#9fb0c0;--accent:#6ea8fe;--line:#223148;}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;background:linear-gradient(180deg,var(--bg),#0a0c10);color:var(--text);line-height:1.7}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1040px;margin:0 auto;padding:20px}
header{position:sticky;top:0;background:rgba(11,15,20,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);z-index:10}
.brand{display:flex;align-items:center;gap:10px}
.logo{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#2b6cb0,#805ad5)}
nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:14px}
nav a{display:inline-block;padding:10px 10px;border-radius:10px;color:var(--text)}
nav a:hover{background:rgba(110,168,254,.12);text-decoration:none}
.hero{padding:26px 0}
.hero h1{font-size:28px;margin:0 0 8px}
.badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.badge{font-size:12px;color:var(--muted);border:1px solid var(--line);padding:6px 10px;border-radius:999px;background:rgba(17,24,38,.6)}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}
.card{grid-column:span 12;background:rgba(17,24,38,.85);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
@media(min-width:860px){.card.half{grid-column:span 6}.card.third{grid-column:span 4}}
h2{font-size:18px;margin:0 0 10px}
h3{font-size:15px;margin:18px 0 8px;color:#dbe6f2}
.small{color:var(--muted);font-size:13px}
.table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--line);border-radius:14px}
.table th,.table td{padding:10px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.table th{background:rgba(110,168,254,.10);text-align:left}
.table tr:last-child td{border-bottom:none}
.kicker{color:var(--muted);font-size:13px}
.cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.btn{display:inline-block;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:rgba(110,168,254,.12);color:var(--text)}
.btn:hover{background:rgba(110,168,254,.20);text-decoration:none}
footer{padding:30px 0;color:var(--muted)}
blockquote{margin:0;padding:12px 14px;border-left:3px solid rgba(110,168,254,.6);background:rgba(110,168,254,.08);border-radius:12px}
dl dt{margin-top:10px}
