:root{
  --ink:#151b22; --bg:#f2f4f6; --panel:#ffffff; --line:#d9dee4;
  --deep:#1c2c3f; --steel:#2f4a63; --mist:#5d8098; --amber:#b8901f;
  --dim:#5f6b78; --ok:#2f7a4f; --warn:#a8761c; --bad:#a33b34;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);
  font:15.5px/1.65 -apple-system,"Segoe UI","Tahoma",sans-serif}
img{max-width:100%;height:auto;display:block}
a{color:var(--steel)}a:hover{color:var(--amber)}
code,kbd{font-family:"Consolas","Menlo",monospace;font-size:.92em}
.gr-shell{width:min(1180px,94vw);margin:0 auto}

.gr-top{background:var(--deep);color:#dbe4ec;border-bottom:3px solid var(--amber)}
.gr-top .gr-shell{display:flex;align-items:center;justify-content:space-between;
  gap:16px;padding:13px 0;flex-wrap:wrap}
.gr-mark{display:flex;align-items:center;gap:11px;text-decoration:none;color:#fff}
.gr-mark svg{display:block}
.gr-mark b{font-size:20px;letter-spacing:.14em;font-weight:700}
.gr-mark span{display:block;font-size:11px;letter-spacing:.06em;color:#8fa6bb;margin-top:1px}
.gr-top nav{display:flex;gap:18px;font-size:14px;flex-wrap:wrap}
.gr-top nav a{color:#b9c9d8;text-decoration:none;padding:3px 0;border-bottom:2px solid transparent}
.gr-top nav a:hover{color:#fff}
.gr-top nav a.gr-on{color:#fff;border-bottom-color:var(--amber)}

.gr-strip{background:#16222f;color:#9db2c4;font-size:12.5px}
.gr-strip .gr-shell{display:flex;gap:26px;padding:7px 0;flex-wrap:wrap}
.gr-strip b{color:#e4ecf3;font-weight:600}
.gr-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;
  vertical-align:baseline;background:#6fbf8e}
.gr-dot.gr-y{background:#d8b04a}.gr-dot.gr-r{background:#c9645c}

.gr-hero{padding:34px 0 26px}
.gr-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:32px;align-items:center}
@media(max-width:860px){.gr-hero-grid{grid-template-columns:1fr}}
.gr-hero h1{margin:0 0 14px;font-size:33px;line-height:1.22;letter-spacing:-.01em}
.gr-hero .gr-lead{font-size:17px;color:#33414f;margin:0 0 16px}
.gr-hero img{border-radius:6px;border:1px solid var(--line)}
.gr-kicker{display:inline-block;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--mist);border:1px solid var(--line);border-radius:3px;padding:3px 10px;
  background:#fff;margin-bottom:14px}

.gr-nums{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:6px;overflow:hidden;margin:6px 0 34px}
@media(max-width:720px){.gr-nums{grid-template-columns:repeat(2,1fr)}}
.gr-nums div{background:var(--panel);padding:16px 18px}
.gr-nums u{display:block;font-size:26px;font-weight:700;color:var(--deep);
  text-decoration:none;font-variant-numeric:tabular-nums}
.gr-nums small{display:block;font-size:12.5px;color:var(--dim);margin-top:3px}

.gr-body{display:grid;grid-template-columns:212px 1fr;gap:38px;padding:8px 0 40px;
  align-items:start}
@media(max-width:900px){.gr-body{grid-template-columns:1fr;gap:22px}}
.gr-side{position:sticky;top:16px;font-size:14px}
@media(max-width:900px){.gr-side{position:static}}
.gr-side h4{margin:0 0 9px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--dim)}
.gr-side ul{list-style:none;margin:0 0 22px;padding:0;border-left:2px solid var(--line)}
.gr-side li{margin:0}
.gr-side a{display:block;padding:5px 0 5px 12px;margin-left:-2px;
  border-left:2px solid transparent;text-decoration:none;color:#3c4956}
.gr-side a:hover{color:var(--deep);border-left-color:var(--mist)}
.gr-side p{font-size:12.5px;color:var(--dim);margin:0 0 6px}

.gr-main h2{font-size:22px;margin:34px 0 12px;padding-bottom:7px;
  border-bottom:1px solid var(--line)}
.gr-main h2:first-child{margin-top:0}
.gr-main h3{font-size:17px;margin:24px 0 8px}
.gr-main p{margin:0 0 12px}
.gr-main ul,.gr-main ol{margin:0 0 14px;padding-left:22px}
.gr-main li{margin:4px 0}

.gr-tbl{width:100%;border-collapse:collapse;font-size:14px;background:var(--panel);
  border:1px solid var(--line);margin:0 0 18px}
.gr-tbl caption{text-align:left;font-size:12.5px;color:var(--dim);padding:0 0 7px}
.gr-tbl th{background:#eaeef2;text-align:left;font-weight:600;font-size:12.5px;
  letter-spacing:.03em;color:#3a4753;padding:8px 11px;border-bottom:1px solid var(--line)}
.gr-tbl td{padding:8px 11px;border-bottom:1px solid #e7ebef;vertical-align:top}
.gr-tbl tr:last-child td{border-bottom:0}
.gr-tbl td.gr-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.gr-wrapx{overflow-x:auto}

.gr-tag{display:inline-block;font-size:11.5px;padding:1px 8px;border-radius:11px;
  border:1px solid;white-space:nowrap}
.gr-tag.gr-ok{color:var(--ok);border-color:#a8cdb6;background:#eef7f1}
.gr-tag.gr-w{color:var(--warn);border-color:#e0cb9a;background:#fbf5e8}
.gr-tag.gr-b{color:var(--bad);border-color:#e0b0ac;background:#fbeeed}

.gr-note{border-left:3px solid var(--amber);background:#fdf8ea;padding:12px 16px;
  margin:0 0 18px;font-size:14.5px}
.gr-note b{display:block;margin-bottom:3px}
.gr-note.gr-cool{border-left-color:var(--mist);background:#eef3f7}

figure{margin:20px 0}
figure img{border:1px solid var(--line);border-radius:5px}
figcaption{font-size:12.5px;color:var(--dim);margin-top:7px}

.gr-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:0 0 20px}
@media(max-width:820px){.gr-cards{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.gr-cards{grid-template-columns:1fr}}
.gr-card{background:var(--panel);border:1px solid var(--line);border-radius:6px;
  padding:15px 17px 17px}
.gr-card h3{margin:0 0 6px;font-size:16px}
.gr-card p{margin:0;font-size:14px;color:#41505e}
.gr-card .gr-hint{display:block;margin-top:9px;font-size:12px;color:var(--dim)}

pre.gr-pre{background:#16222f;color:#d5e2ee;border-radius:5px;padding:13px 15px;
  overflow-x:auto;font-size:13px;line-height:1.55;margin:0 0 16px}
pre.gr-pre .gr-c{color:#7f97ab}

dl.gr-dl{margin:0 0 18px;display:grid;grid-template-columns:180px 1fr;gap:6px 16px;font-size:14.5px}
@media(max-width:620px){dl.gr-dl{grid-template-columns:1fr}}
dl.gr-dl dt{color:var(--dim)}
dl.gr-dl dd{margin:0}

.gr-log{list-style:none;margin:0 0 20px;padding:0}
.gr-log li{border-left:2px solid var(--line);padding:0 0 16px 18px;position:relative}
.gr-log li:before{content:"";position:absolute;left:-5px;top:6px;width:8px;height:8px;
  border-radius:50%;background:var(--mist)}
.gr-log time{display:block;font-size:12px;color:var(--dim);letter-spacing:.04em}
.gr-log b{display:block;margin:1px 0 3px}
.gr-log p{margin:0;font-size:14px;color:#41505e}

.gr-foot{background:var(--deep);color:#93a8bb;font-size:13.5px;margin-top:10px}
.gr-foot .gr-shell{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:26px;padding:26px 0}
@media(max-width:760px){.gr-foot .gr-shell{grid-template-columns:1fr}}
.gr-foot h5{margin:0 0 8px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#6f8699}
.gr-foot a{color:#c2d3e1;text-decoration:none}
.gr-foot a:hover{color:#fff;text-decoration:underline}
.gr-foot ul{list-style:none;margin:0;padding:0}
.gr-foot li{margin:3px 0}
.gr-foot .gr-fine{border-top:1px solid #2a3948;padding:12px 0 20px;font-size:12.5px;color:#6f8699}

.gr-404{background:var(--panel);border:1px solid var(--line);border-radius:6px;
  padding:44px 34px;margin:40px 0;text-align:center}
.gr-404 b{display:block;font-size:58px;color:var(--deep);letter-spacing:.06em;
  font-variant-numeric:tabular-nums}
.gr-404 p{margin:10px 0 0;color:#41505e}
