:root{
  --ground:#F2F4F7; --surface:#FFFFFF; --surface-2:#E8ECF2;
  --ink:#141A22; --ink-2:#48566A; --ink-3:#78879B;
  --line:#D2D9E3; --line-2:#BFC8D6;
  --amber:#9C6212; --amber-ink:#7A4C0C; --amber-soft:#F7EAD4; --amber-line:#E4C79A;
  --blue:#33507A; --blue-soft:#E2E9F4; --blue-line:#B9C9E2;
  --display:"Bricolage Grotesque","Segoe UI",system-ui,sans-serif;
  --body:"IBM Plex Sans","Segoe UI",system-ui,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --ground:#101620; --surface:#18202C; --surface-2:#212B39;
    --ink:#E8EDF4; --ink-2:#A6B3C5; --ink-3:#718094;
    --line:#28323F; --line-2:#354254;
    --amber:#E9A542; --amber-ink:#F0BC72; --amber-soft:#33270F; --amber-line:#5A4520;
    --blue:#8AA6CE; --blue-soft:#1C2635; --blue-line:#2F425C;
  }
}
:root[data-theme="dark"]{
  --ground:#101620; --surface:#18202C; --surface-2:#212B39;
  --ink:#E8EDF4; --ink-2:#A6B3C5; --ink-3:#718094;
  --line:#28323F; --line-2:#354254;
  --amber:#E9A542; --amber-ink:#F0BC72; --amber-soft:#33270F; --amber-line:#5A4520;
  --blue:#8AA6CE; --blue-soft:#1C2635; --blue-line:#2F425C;
}
*{box-sizing:border-box}
body{
  margin:0; background:var(--ground); color:var(--ink);
  font-family:var(--body); font-size:17px; line-height:1.7; -webkit-font-smoothing:antialiased;
}
.wrap{max-width:760px; margin:0 auto; padding:0 24px}
a{color:var(--amber-ink)}
a:focus-visible{outline:2px solid var(--amber); outline-offset:3px; border-radius:4px}
.nav{border-bottom:1px solid var(--line); background:var(--surface)}
.nav-in{display:flex; align-items:center; gap:22px; height:60px; max-width:760px; margin:0 auto; padding:0 24px}
.mark{display:flex; align-items:center; gap:10px; font-family:var(--display); font-weight:800;
  font-size:1.1rem; letter-spacing:-.02em; text-decoration:none; color:var(--ink)}
.mark-dot{width:18px; height:18px; border-radius:6px 6px 6px 2px; background:var(--amber); flex:none}
.nav-in .right{margin-left:auto; display:flex; gap:20px}
.nav-in .right a{font-size:.92rem; color:var(--ink-2); text-decoration:none}
.nav-in .right a:hover{color:var(--ink)}
header.doc{padding:clamp(44px,7vw,72px) 0 8px}
h1{font-family:var(--display); font-weight:800; font-size:clamp(2.1rem,5vw,3rem);
  letter-spacing:-.026em; line-height:1.08; margin:0; text-wrap:balance}
.updated{font-family:var(--mono); font-size:.76rem; color:var(--ink-3);
  text-transform:uppercase; letter-spacing:.1em; margin:0 0 14px}
h2{font-family:var(--display); font-weight:800; font-size:1.5rem; letter-spacing:-.018em;
  line-height:1.2; margin:52px 0 0; text-wrap:balance}
h3{font-family:var(--body); font-weight:600; font-size:1.06rem; margin:30px 0 0}
p{margin:14px 0 0; color:var(--ink-2)}
p.lead{font-size:1.12rem; color:var(--ink); margin-top:22px}
ul,ol{margin:14px 0 0; padding-left:22px; color:var(--ink-2)}
li{margin:7px 0}
li::marker{color:var(--ink-3)}
strong{color:var(--ink); font-weight:600}
code{font-family:var(--mono); font-size:.86em; background:var(--surface-2);
  padding:1px 5px; border-radius:4px; color:var(--ink)}
.tablewrap{overflow-x:auto; margin-top:18px; border:1px solid var(--line); border-radius:10px}
table{border-collapse:collapse; width:100%; min-width:460px; font-size:.93rem}
th,td{text-align:left; padding:11px 14px; border-bottom:1px solid var(--line); vertical-align:top}
th{font-family:var(--mono); font-size:.72rem; text-transform:uppercase; letter-spacing:.08em;
  color:var(--ink-3); font-weight:500; background:var(--surface-2)}
tr:last-child td{border-bottom:0}
td{color:var(--ink-2)}
.callout{
  margin-top:24px; padding:18px 20px; border-radius:10px; background:var(--surface);
  border:1px solid var(--line); border-left:2px solid var(--amber);
}
.callout p:first-child{margin-top:0}
.callout .tag{font-family:var(--mono); font-size:.7rem; text-transform:uppercase;
  letter-spacing:.12em; color:var(--amber-ink); display:block; margin-bottom:6px}
.callout.pending{border-left-color:var(--blue); background:var(--blue-soft)}
.callout.pending .tag{color:var(--blue)}
.short{margin-top:26px; padding:22px 24px; border-radius:12px;
  background:var(--surface); border:1px solid var(--line)}
.short p:first-child{margin-top:0}
hr{border:0; border-top:1px solid var(--line); margin:56px 0 0}
footer{border-top:1px solid var(--line); margin-top:64px; padding:30px 0 56px;
  color:var(--ink-3); font-size:.87rem}
.foot-in{display:flex; flex-wrap:wrap; gap:14px 24px; align-items:center;
  max-width:760px; margin:0 auto; padding:0 24px}
.foot-in a{color:var(--ink-2); text-decoration:none}
.foot-in a:hover{color:var(--ink); text-decoration:underline}
.foot-in .spacer{margin-left:auto}
