:root{--bg:#F2F4F0;--surface:#FFFFFF;--line:#D3D8CE;--ink:#171C19;--ink-2:#4A544D;
  --ink-3:#77837A;--accent:#0E6B4C;
  --body:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --display:"Bricolage Grotesque","IBM Plex Sans",system-ui,sans-serif;}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#111512;--surface:#191E1B;--line:#323A35;--ink:#EAEEE9;--ink-2:#AEB8B1;
  --ink-3:#7E8A83;--accent:#3FBF8E;}}
:root[data-theme="dark"]{--bg:#111512;--surface:#191E1B;--line:#323A35;
  --ink:#EAEEE9;--ink-2:#AEB8B1;--ink-3:#7E8A83;--accent:#3FBF8E;}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);
  font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
.bar{border-bottom:1px solid var(--line);background:var(--surface)}
.bar-in,.wrap{max-width:760px;margin:0 auto;padding:0 22px}
.bar-in{display:flex;align-items:center;gap:16px;height:60px}
.bar a.brand{font-family:var(--display);font-weight:800;font-size:18px;
  color:var(--ink);text-decoration:none;letter-spacing:-.02em;margin-right:auto}
.bar a.brand b{color:var(--accent)}
.bar nav{display:flex;gap:16px;font-size:14px}
.bar nav a{color:var(--ink-3);text-decoration:none}
.bar nav a:hover{color:var(--ink)}
.wrap{padding-top:44px;padding-bottom:80px}
h1{font-family:var(--display);font-size:34px;font-weight:800;letter-spacing:-.03em;
  margin:0 0 6px;line-height:1.1;text-wrap:balance}
.upd{color:var(--ink-3);font-size:13.5px;margin:0 0 34px}
h2{font-family:var(--display);font-size:20px;font-weight:700;letter-spacing:-.015em;
  margin:38px 0 10px;padding-top:22px;border-top:1px solid var(--line)}
h3{font-family:var(--display);font-size:15.5px;font-weight:700;margin:24px 0 6px}
p,li{color:var(--ink-2)}
p{margin:0 0 14px}
ul{margin:0 0 16px;padding-left:22px}
li{margin-bottom:7px}
a{color:var(--accent)}
strong{color:var(--ink);font-weight:600}
.note{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--accent);
  border-radius:0 8px 8px 0;padding:14px 18px;margin:20px 0}
.note p:last-child{margin-bottom:0}
table{border-collapse:collapse;width:100%;font-size:14.5px;margin:0 0 18px;
  display:block;overflow-x:auto}
th,td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);
  vertical-align:top}
th{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);
  font-weight:600;white-space:nowrap}
td{color:var(--ink-2)}
footer{border-top:1px solid var(--line);margin-top:60px;padding:26px 0 60px;
  font-size:13.5px;color:var(--ink-3)}
footer .wrap{padding-top:0;padding-bottom:0}
footer a{color:var(--ink-3)}
