/* BEGIN forum icon art: generated WebP is undecorated; PC and mobile share CSS. */
:is(.fl_icn, .fl_icn_g, .micon) a:has(> img[src*="/common/forum-icons/"]) {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 170px;
  height: 70px;
  padding: 0;
  margin: 0;
  overflow: hidden;
  isolation: isolate;
}
:is(.fl_icn, .fl_icn_g, .micon) a:has(> img[src*="/common/forum-icons/"])::before,
.forumdisplay-top h2:has(> img[src*="/common/forum-icons/"])::before {
  content: "";
  position: absolute;
  box-sizing: border-box;
  left: 3px;
  top: 1px;
  width: 166px;
  height: 68px;
  border: 1px solid #b8b7b7;
  border-radius: 6px;
  background: #fefefe;
  box-shadow: 0 0 3.5px rgb(0 0 0 / 35%);
  pointer-events: none;
}
body :is(.fl_icn, .fl_icn_g, .micon) img[align="left"][src*="/common/forum-icons/"],
.forumdisplay-top h2 > img[src*="/common/forum-icons/"] {
  position: absolute;
  display: block;
  left: 9px;
  top: 7px;
  width: 154px !important;
  height: 56px !important;
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0 !important;
  object-fit: fill;
  float: none;
  filter: brightness(var(--forum-icon-gain, 1));
}
:is(.fl_icn, .fl_icn_g, .micon) a:has(> img[src*="/common/forum-icons/"])::after,
.forumdisplay-top h2:has(> img[src*="/common/forum-icons/"])::after {
  content: "";
  position: absolute;
  left: 9px;
  top: 7px;
  width: 154px;
  height: 56px;
  background: rgb(255 255 255 / 39.886098%);
  /* A shallow ellipse intersected with the picture rectangle. */
  clip-path: ellipse(174px 51.5px at 73.5px -23.5px);
  pointer-events: none;
}
/* Historical variants with a 10% black layer beneath the shared gloss. */
img[src$="/common/forum-icons/12.webp"],
img[src$="/common/forum-icons/23.webp"],
img[src$="/common/forum-icons/24.webp"],
img[src$="/common/forum-icons/67.webp"],
img[src$="/common/forum-icons/69.webp"],
img[src$="/common/forum-icons/77.webp"],
img[src$="/common/forum-icons/79.webp"],
img[src$="/common/forum-icons/80.webp"],
img[src$="/common/forum-icons/104.webp"],
img[src$="/common/forum-icons/106.webp"],
img[src$="/common/forum-icons/112.webp"],
img[src$="/common/forum-icons/114.webp"],
img[src$="/common/forum-icons/117.webp"],
img[src$="/common/forum-icons/161.webp"] {
  --forum-icon-gain: .9;
}
/* The stock mobile height of 44px otherwise squashes custom wide icons. */
.forumlist .sub-forum li .micon:has(img[src*="/common/forum-icons/"]) {
  width: 170px;
  height: 70px;
}
.forumlist :is(.mlist1, .mlist2) li:has(img[src*="/common/forum-icons/"]) > .murl {
  margin-top: 13px;
}
/* The mobile board heading emits a bare image beside its title/favorite link. */
.forumdisplay-top h2:has(> img[src*="/common/forum-icons/"]) {
  position: relative;
  isolation: isolate;
  box-sizing: border-box;
  min-height: 70px;
  height: auto;
  padding-left: 180px;
}
/* END forum icon art */
