:root{
  --bg:#0b0f19; --card:#111827; --text:#e5e7eb; --muted:#9ca3af;
  --accent:#60a5fa; --accent2:#34d399; --border:#1f2937; --warn:#fbbf24;
  --max:1080px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family: ui-sans-serif, system-ui, -apple-system, "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Segoe UI", Arial;}
body{background:linear-gradient(180deg,var(--bg),#070a12);color:var(--text);line-height:1.7}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
header{position:sticky;top:0;z-index:20;background:rgba(11,15,25,.85);backdrop-filter: blur(10px);border-bottom:1px solid var(--border)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 18px}
.nav{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:12px 0}
.brand{display:flex;align-items:center;gap:10px}
.logo{width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--accent2))}
.brand b{letter-spacing:.2px}
.navlinks{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.navlinks a{padding:7px 10px;border-radius:10px;border:1px solid transparent;color:var(--text)}
.navlinks a:hover{border-color:var(--border);text-decoration:none;background:rgba(255,255,255,.03)}
.hero{padding:34px 0 18px}
.grid{display:grid;grid-template-columns: 1.35fr .65fr; gap:18px}
@media (max-width: 900px){.grid{grid-template-columns:1fr}}
.card{background:rgba(17,24,39,.82);border:1px solid var(--border);border-radius:18px;padding:18px;box-shadow:0 10px 40px rgba(0,0,0,.25)}
.h1{font-size:30px;line-height:1.25;margin:0 0 10px}
.kicker{color:var(--muted);margin:0 0 10px}
.badges{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 0}
.badge{font-size:12px;color:var(--text);border:1px solid var(--border);padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.03)}
.cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.btn{display:inline-block;padding:10px 14px;border-radius:14px;border:1px solid var(--border);background:rgba(255,255,255,.03);color:var(--text)}
.btn.primary{background:linear-gradient(135deg,rgba(96,165,250,.25),rgba(52,211,153,.18));border-color:rgba(96,165,250,.35)}
.btn:hover{text-decoration:none;transform:translateY(-1px)}
.small{font-size:13px;color:var(--muted)}
.section{padding:12px 0 28px}
.h2{font-size:20px;margin:0 0 10px}
.table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border-radius:14px;border:1px solid var(--border)}
.table th,.table td{padding:12px 10px;border-bottom:1px solid var(--border);vertical-align:top}
.table th{background:rgba(255,255,255,.03);text-align:left;font-weight:700}
.table tr:last-child td{border-bottom:none}
.note{padding:12px 14px;border-radius:14px;border:1px dashed rgba(96,165,250,.5);background:rgba(96,165,250,.08)}
.warn{border-color:rgba(251,191,36,.55);background:rgba(251,191,36,.08)}
footer{border-top:1px solid var(--border);padding:22px 0;color:var(--muted)}
ul{margin:8px 0 0 18px}
hr{border:none;border-top:1px solid var(--border);margin:14px 0}
.meta{display:flex;gap:12px;flex-wrap:wrap}
.meta span{font-size:12px;color:var(--muted);border:1px solid var(--border);padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.02)}
