:root{
  --bg:#ffffff; --fg:#14202b; --muted:#5b6b7a;
  --line:#e2e8ee; --accent:#0b4f6c; --card:#f6f9fb;
}
@media (prefers-color-scheme:dark){
  :root{ --bg:#0e1620; --fg:#e8eef4; --muted:#9aabb9;
         --line:#233240; --accent:#7fc7e3; --card:#152130; }
}
*{box-sizing:border-box}
body{
  margin:0; background:var(--bg); color:var(--fg);
  font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
.wrap{max-width:46rem; margin:0 auto; padding:2.5rem 1.25rem 4rem}
header{border-bottom:1px solid var(--line); padding-bottom:1.5rem; margin-bottom:2rem}
h1{font-size:1.75rem; margin:0 0 .35rem; letter-spacing:-.01em; line-height:1.3}
.sub{color:var(--muted); margin:0}
h2{font-size:1.15rem; margin:2.5rem 0 .75rem; color:var(--accent)}
h3{font-size:1rem; margin:1.5rem 0 .35rem}
p{margin:.65rem 0}
a{color:var(--accent)}
a:focus-visible,button:focus-visible{outline:2px solid var(--accent); outline-offset:2px}
ul{padding-left:1.25rem}
li{margin:.35rem 0}
dl{margin:0; padding:1.25rem; background:var(--card);
   border:1px solid var(--line); border-radius:.6rem}
dt{font-weight:600; margin-top:.85rem}
dt:first-child{margin-top:0}
dd{margin:.15rem 0 0}
.terms dt{margin-top:1.1rem}
.terms{padding:0; background:none; border:0}
address{font-style:normal; color:var(--muted); margin-top:1.5rem; line-height:1.6}
nav.top{margin-bottom:1.5rem; font-size:.9375rem}
nav.top a{margin-right:1.25rem}
.lang{margin-top:4rem; padding-top:2rem; border-top:1px solid var(--line)}
footer{margin-top:3rem; padding-top:1.5rem; border-top:1px solid var(--line);
       color:var(--muted); font-size:.875rem}
.updated{color:var(--muted); font-size:.875rem; font-style:italic}
table{border-collapse:collapse; width:100%; margin:1rem 0; font-size:.9375rem}
th,td{border:1px solid var(--line); padding:.5rem .65rem; text-align:left; vertical-align:top}
th{background:var(--card); font-weight:600}
.scroll{overflow-x:auto}
