.w321em-post { overflow-wrap: anywhere; }
.w321em-post .w321em-figure { margin: 0 0 1.5em; }
.w321em-post .w321em-figure img { display: block; max-width: 100%; height: auto; border-radius: 4px; }
.w321em-post .w321em-figure figcaption { font-size: .9em; opacity: .8; margin-top: .4em; }
.w321em-post .w321em-table { margin: 0 0 1.5em; overflow-x: auto; }
.w321em-post .w321em-table table { border-collapse: collapse; width: 100%; }
.w321em-post .w321em-table th, .w321em-post .w321em-table td { border: 1px solid rgba(0,0,0,.2); padding: .5em .75em; text-align: left; vertical-align: top; }
.w321em-post .w321em-table thead th { background: rgba(0,0,0,.05); }
.w321em-post .w321em-gallery { margin: 0 0 1.5em; }
.w321em-post .w321em-gallery img { cursor: zoom-in; } .w321em-lb { position: fixed; inset: 0; z-index: 99999; background: rgba(0,0,0,.88); display: flex; align-items: center; justify-content: center; padding: 4vh 4vw; }
.w321em-lb img { max-width: 100%; max-height: 100%; object-fit: contain; }
.w321em-lb button { position: absolute; background: rgba(255,255,255,.15); color: #fff; border: 0; font-size: 28px; width: 52px; height: 52px; border-radius: 50%; cursor: pointer; }
.w321em-lb .w321em-lb-close { top: 16px; right: 16px; }
.w321em-lb .w321em-lb-prev { left: 16px; top: 50%; transform: translateY(-50%); }
.w321em-lb .w321em-lb-next { right: 16px; top: 50%; transform: translateY(-50%); }