:root{
  --ink:#1d1d1f;--ink-2:#424245;--ink-3:#6e6e73;
  --paper:#fff;--mist:#f5f5f7;--hairline:#d2d2d7;--accent:#0071e3;
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",
        "Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP","Yu Gothic Medium",
        "Segoe UI",Roboto,sans-serif;
}
*{box-sizing:border-box}
body{
  margin:0;font-family:var(--font);color:var(--ink);background:var(--paper);
  -webkit-font-smoothing:antialiased;line-height:1.72;
}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}

.nav{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.82);
  backdrop-filter:saturate(180%) blur(20px);
  -webkit-backdrop-filter:saturate(180%) blur(20px);
  border-bottom:1px solid rgba(0,0,0,.08);
}
.nav-in{
  max-width:720px;margin:0 auto;padding:0 24px;height:68px;
  display:flex;align-items:center;gap:8px;
}
.nav-in img{height:40px;width:auto}
.nav-in a{color:var(--ink);font-size:17px;font-weight:600;letter-spacing:-.01em}
.nav-in a:hover{text-decoration:none}

main{max-width:720px;margin:0 auto;padding:64px 24px 96px}
h1{font-size:clamp(28px,4.4vw,40px);line-height:1.15;letter-spacing:-.022em;font-weight:700;margin:0}
.updated{color:var(--ink-3);font-size:13px;margin:14px 0 0}
h2{font-size:20px;line-height:1.3;letter-spacing:-.015em;font-weight:600;margin:52px 0 0}
h3{font-size:16px;font-weight:600;margin:28px 0 0}
p{margin:14px 0 0;font-size:15.5px;color:var(--ink-2)}
ul,ol{margin:14px 0 0;padding-left:1.35em}
li{font-size:15.5px;color:var(--ink-2);margin:7px 0}
table{border-collapse:collapse;width:100%;margin:20px 0 0;font-size:15px}
th,td{border-bottom:1px solid var(--hairline);padding:13px 4px;text-align:left;vertical-align:top}
th{width:34%;font-weight:600;color:var(--ink)}
td{color:var(--ink-2)}
.callout{
  margin:22px 0 0;padding:18px 20px;background:var(--mist);
  border-radius:14px;font-size:15px;color:var(--ink-2);
}
.callout strong{color:var(--ink)}
footer{border-top:1px solid var(--hairline);margin-top:72px;padding-top:26px;font-size:13px;color:var(--ink-3)}
footer a{color:var(--ink-2);margin-right:20px}
@media(max-width:560px){ th,td{display:block;width:auto} th{border:0;padding-bottom:0} }
