:root{--bg:#1A1F1E;--bg-2:#1E2423;--linha:#2D3532;--zebra:rgba(45,53,50,0.35);--texto:#FFFFFF;--texto-2:#8A8A8A;--th:#A8B5B2}
  *{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}
  body{background:var(--bg);color:var(--texto);font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:16px;line-height:24px;-webkit-font-smoothing:antialiased}
  a{color:var(--texto);text-decoration:none}a:hover{text-decoration:underline}
  .masthead{padding:46px 24px 26px;text-align:center;border-bottom:1px solid var(--linha)}
  .masthead h1{font-size:23px;font-weight:600;letter-spacing:-0.48px;color:var(--texto);margin-bottom:10px}
  .masthead .sub{font-size:14px;color:var(--texto-2);margin-bottom:24px}
  .meta-group{margin-top:16px}.meta-group .lab{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--texto-2);margin-bottom:6px}
  .meta-group .links{font-size:13.5px;color:var(--texto-2)}.meta-group .links a{color:var(--texto);font-weight:500}.meta-group .links .sep{color:var(--texto-2);margin:0 8px}
  .shell{display:grid;grid-template-columns:224px minmax(0,1fr);max-width:1160px;margin:0 auto}
  .side{padding:32px 16px 60px;border-right:1px solid var(--linha);position:sticky;top:0;align-self:start;height:100vh;overflow-y:auto}
  .side::-webkit-scrollbar{width:6px}.side::-webkit-scrollbar-thumb{background:var(--linha);border-radius:3px}
  .side .brand{font-size:15px;font-weight:600;color:var(--texto);letter-spacing:.5px}.side .brand-sub{font-size:12px;color:var(--texto-2);margin:1px 0 22px}
  .nav-cat{font-size:11.5px;font-weight:600;letter-spacing:.5px;color:var(--th);text-transform:uppercase;margin:20px 0 7px}.nav-cat:first-of-type{margin-top:0}
  .nav-item{display:block;font-size:14px;font-weight:400;line-height:20px;color:var(--texto);padding:5px 8px;opacity:.78;border-radius:4px;cursor:pointer}
  .nav-item:hover{opacity:1;text-decoration:none;background:var(--bg-2)}.nav-item.active{opacity:1;font-weight:600;background:var(--bg-2)}
  .nav-item .n{color:var(--texto-2);font-variant-numeric:tabular-nums;margin-right:6px;font-size:12px}
  .nav-soon{font-size:12px;color:var(--texto-2);padding:5px 8px;opacity:.6}
  .main{padding:30px 48px 90px;max-width:912px}
  .urlbar{font-size:12px;color:var(--texto-2);background:var(--bg-2);border:1px solid var(--linha);border-radius:5px;padding:7px 12px;margin-bottom:18px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;overflow-x:auto;white-space:nowrap}
  .urlbar b{color:var(--th);font-weight:500}
  .crumb{font-size:13px;color:var(--texto-2);margin-bottom:20px}.crumb a{color:var(--texto-2);cursor:pointer}.crumb .here{color:var(--texto)}.crumb .sep{margin:0 8px}
  .main h1.title{font-size:24px;font-weight:600;letter-spacing:-0.48px;color:var(--texto);line-height:32px;margin-bottom:12px}
  .updated{font-size:12px;color:var(--texto-2);margin-bottom:26px}
  .main h2{font-size:20px;font-weight:600;color:var(--texto);margin:30px 0 10px}
  .main h3{font-size:16px;font-weight:600;color:var(--texto);margin:22px 0 8px}
  .main p{margin-bottom:13px}.main p b,.main li b{font-weight:600;color:var(--texto)}
  .main ul{margin:0 0 15px;padding-left:20px}.main ul li{margin-bottom:6px}.main ul li::marker{color:var(--texto-2)}
  .lead{font-size:16px;margin-bottom:16px}
  .tbl-wrap{overflow-x:auto;margin:0 0 16px}table{width:100%;border-collapse:collapse;font-size:13.5px}
  thead th{background:var(--bg-2);color:var(--th);font-weight:600;text-align:left;padding:9px 12px;border-bottom:1px solid var(--linha);white-space:nowrap}
  tbody td{color:var(--texto);padding:9px 12px;border-bottom:1px solid var(--linha);vertical-align:top}
  tbody tr:nth-child(even){background:var(--zebra)}
  .src{font-size:12px;color:var(--texto-2);margin-top:-6px;margin-bottom:16px}
  .article{display:none}.article.show{display:block}
  .idx-list{list-style:none;padding:0;margin:8px 0 0}.idx-list li{margin-bottom:0;padding:0}
  .idx-list a{display:block;padding:11px 14px;border:1px solid var(--linha);border-radius:5px;margin-bottom:8px;cursor:pointer;font-size:14px}
  .idx-list a:hover{background:var(--bg-2);text-decoration:none}.idx-list a .n{color:var(--th);font-variant-numeric:tabular-nums;margin-right:8px;font-weight:600}
  footer.kb{border-top:1px solid var(--linha);padding:24px 48px;font-size:12px;color:var(--texto-2);max-width:912px;margin:0 auto}
  @media(max-width:860px){.shell{grid-template-columns:1fr}.side{display:none}.main{padding:26px 20px 70px}footer.kb{padding:20px}}
  @media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* home */
.home-main{max-width:760px;margin:0 auto}
.home-main h2{margin-top:34px}
