:root{--navy-900:#0a0f1e;--navy-800:#0e1428;--navy-700:#141d38;--navy-600:#1c2747;--panel:#121a30;--panel-2:#16203c;--ink:#e8edf7;--ink-dim:#9aa6c4;--ink-faint:#7e8cae;--cyan:#36d6e7;--cyan-deep:#1b9fb3;--amber:#f5a623;--amber-deep:#c47e10;--warn:#f5a623;--ok:#4ad6a0;--stroke:#78a0dc29;--stroke-soft:#78a0dc1a;--verified:#4ad6a0;--legacy:#9aa6c4;--stale:#f5a623;--grad-a:linear-gradient(135deg, #36d6e7, #1b9fb3);--grad-b:linear-gradient(135deg, #f5a623, #c47e10);--shadow:0 10px 30px #00000059;--radius:14px;--maxw:1180px;--font:"Hiragino Sans", "Noto Sans JP", "Segoe UI", system-ui, -apple-system, sans-serif;--mono:"SFMono-Regular", "JetBrains Mono", Consolas, monospace}body.light{--navy-900:#eef2f8;--navy-800:#f4f7fb;--navy-700:#fff;--navy-600:#e8edf5;--panel:#fff;--panel-2:#f4f7fb;--ink:#10203c;--ink-dim:#44567a;--ink-faint:#5f6f93;--stroke:#14285024;--stroke-soft:#14285014;--shadow:0 8px 24px #283c641f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font);background:radial-gradient(1200px 600px at 80% -10%, #36d6e714, transparent 60%), radial-gradient(900px 500px at 0% 0%, #f5a6230d, transparent 55%), var(--navy-900);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;line-height:1.7}body.light{background:radial-gradient(1200px 600px at 80% -10%, #1b9fb30f, transparent 60%), radial-gradient(900px 500px at 0% 0%, #c47e100a, transparent 55%), var(--navy-900)}a{color:var(--cyan-deep);text-decoration:none}a:hover{text-decoration:underline}body.light a{color:#0a6680}code{overflow-wrap:anywhere;word-break:break-word}dd{overflow-wrap:anywhere}dd a{word-break:break-all}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px 64px}.container{max-width:var(--maxw);margin:0 auto;padding:0 20px}.site-header{z-index:50;backdrop-filter:blur(10px);background:color-mix(in srgb, var(--navy-800) 82%, transparent);border-bottom:1px solid var(--stroke-soft);position:sticky;top:0}.site-header .bar{max-width:var(--maxw);flex-wrap:wrap;align-items:center;gap:16px;margin:0 auto;padding:12px 20px;display:flex}.brand{align-items:center;gap:10px;font-weight:800;display:flex}.brand .logo{width:30px;height:30px}.brand .name{letter-spacing:.02em;font-size:16px}.brand .name small{color:var(--ink-faint);letter-spacing:.08em;font-size:10.5px;font-weight:600;display:block}.site-nav{flex-wrap:wrap;gap:14px;margin-left:auto;font-size:13.5px;display:flex}.site-nav a{color:var(--ink-dim)}.site-nav a:hover{color:var(--ink);text-decoration:none}.theme-btn{cursor:pointer;color:var(--ink);background:var(--panel-2);border:1px solid var(--stroke);border-radius:11px;padding:9px 14px;font-family:inherit;font-size:12.5px;font-weight:600;transition:all .22s}.theme-btn:hover{border-color:var(--cyan);background:var(--cyan);color:#04121a}main{display:block}.card{background:var(--panel);border:1px solid var(--stroke-soft);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}.card+.card{margin-top:18px}h1,h2,h3{line-height:1.3}h1{letter-spacing:-.01em;margin:0 0 10px;font-size:clamp(26px,4vw,38px)}h2{margin:0 0 14px;font-size:clamp(20px,2.6vw,26px)}h3{margin:0 0 10px;font-size:17px}.lead{color:var(--ink-dim);max-width:72ch;font-size:16px}.badge{letter-spacing:.03em;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700;display:inline-block}.badge.verified{color:var(--verified);background:#4ad6a029;border:1px solid #4ad6a066}body.light .badge.verified{color:#076b4e;border-color:#076b4e80}.badge.legacy{color:var(--legacy);background:#9aa6c424;border:1px solid #9aa6c459}.badge.stale{color:var(--stale);background:#f5a62329;border:1px solid #f5a62366}.badge.warn{color:var(--warn);background:#f5a62324;border:1px solid #f5a62359}.badge.ev-A{color:#36d6e7;background:#36d6e729;border:1px solid #36d6e76b}.badge.ev-B{color:#1b9fb3;background:#1b9fb329;border:1px solid #1b9fb36b}.badge.ev-C{color:var(--ok);background:#4ad6a029;border:1px solid #4ad6a06b}.badge.ev-D{color:var(--amber);background:#f5a62329;border:1px solid #f5a6236b}.badge.ev-E{color:#b9a6e6;background:#9aa6c429;border:1px solid #9aa6c46b}.badge.ev-U{color:#ff8a8a;background:#f55a5a29;border:1px solid #f55a5a6b}body.light .badge.ev-A,body.light .badge.ev-B{color:#0a6680}body.light .badge.ev-C{color:#076b4e}body.light .badge.ev-D{color:#9a5b00}body.light .badge.ev-E{color:#5b4a8a}body.light .badge.ev-U{color:#a02020}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.btn{cursor:pointer;color:#04121a;background:var(--grad-a);box-shadow:var(--shadow);border:none;border-radius:12px;padding:12px 20px;font-family:inherit;font-size:14px;font-weight:700;transition:all .22s}.btn:hover{filter:brightness(1.06);transform:translateY(-1px)}.btn.ghost{background:var(--panel-2);color:var(--ink);border:1px solid var(--stroke);box-shadow:none}.btn.amber{background:var(--grad-b)}.cmp-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}table.data{border-collapse:collapse;width:100%;font-size:13.5px}table.data th,table.data td{text-align:left;border-bottom:1px solid var(--stroke-soft);padding:9px 12px}table.data th{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700}body.light table.data th{color:#4f5e82}table.data tbody tr:hover{background:var(--panel-2)}.site-footer{border-top:1px solid var(--stroke-soft);background:var(--navy-800);color:var(--ink-dim);margin-top:48px;font-size:12.5px;line-height:1.9}.site-footer .inner{max-width:var(--maxw);margin:0 auto;padding:28px 20px}.site-footer a{color:var(--ink-dim)}.breadcrumbs{color:var(--ink-faint);margin:18px 0 8px;font-size:12.5px}.breadcrumbs a{color:var(--ink-faint)}.breadcrumbs span.sep{opacity:.5;margin:0 7px}.skip-link{background:var(--cyan);color:#04121a;z-index:100;border-radius:0 0 10px;padding:8px 14px;position:absolute;top:0;left:-999px}.skip-link:focus{left:0}.muted{color:var(--ink-faint)}.note{color:var(--ink-dim);font-size:13px}.note a{text-decoration:underline}.center{text-align:center}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}@media (width<=900px){.grid-3,.grid-2{grid-template-columns:1fr}.site-nav{order:3;width:100%;margin-left:0}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}}
