* { margin: 0; padding: 0; box-sizing: border-box; }
body {
  font: 15px/1.55 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
        Helvetica, Arial, sans-serif;
  background: #eef2f5; color: #1d2833;
}
.wrap { max-width: 980px; margin: 0 auto; padding: 0 14px; }
a { color: #176093; text-decoration: none; }
a:hover { text-decoration: underline; }

.siteHead { background: #1c4e73; padding: 14px 0; margin-bottom: 16px; }
.siteHead .wrap { display: flex; align-items: center; gap: 16px;
  flex-wrap: wrap; }
.brand { color: #fff; font-size: 22px; font-weight: 700; }
.brand:hover { text-decoration: none; }
.archiveTag { font-size: 12px; font-weight: 400; background: #ffffff33;
  padding: 2px 8px; border-radius: 10px; vertical-align: middle; }
.search { margin-left: auto; }
.search input[type=search] { padding: 6px 10px; border: none;
  border-radius: 4px; width: 220px; font-size: 14px; }

.crumbs { font-size: 13px; margin-bottom: 12px; color: #5a6b7b;
  overflow-wrap: anywhere; }
.crumbs .sep { color: #9ab; }

.notice { background: #fdf6df; border: 1px solid #e8d998; padding: 10px 14px;
  border-radius: 6px; margin-bottom: 18px; font-size: 14px; }

.cat h2 { font-size: 17px; margin: 22px 0 8px; color: #1c4e73; }
table.forumList, table.threadList { width: 100%; border-collapse: collapse;
  background: #fff; border: 1px solid #d5dee5; border-radius: 6px;
  overflow: hidden; }
.forumList th, .threadList th { text-align: left; font-size: 12px;
  text-transform: uppercase; letter-spacing: .04em; color: #5a6b7b;
  background: #f4f7f9; padding: 8px 12px; border-bottom: 1px solid #d5dee5; }
.forumList td, .threadList td { padding: 10px 12px;
  border-bottom: 1px solid #e7edf2; vertical-align: top; }
.forumList tr:last-child td, .threadList tr:last-child td { border-bottom: 0; }
.fTitle a { font-weight: 600; font-size: 15px; }
.fDesc, .tBy { font-size: 12.5px; color: #728496; margin-top: 2px; }
.tNum { text-align: right; white-space: nowrap; width: 70px;
  font-variant-numeric: tabular-nums; }
.tLast { width: 190px; font-size: 13px; }
.tTitle a { font-weight: 600; overflow-wrap: anywhere; }
.pin { font-size: 13px; }

h1 { font-size: 22px; margin: 4px 0 4px; overflow-wrap: anywhere; }
.threadTitle { margin-bottom: 2px; }
.threadMeta, .forumDesc { color: #728496; font-size: 13.5px;
  margin-bottom: 14px; }

.pager { margin: 14px 0; display: flex; gap: 6px; flex-wrap: wrap;
  align-items: center; }
.pgBtn, .pgCur { padding: 4px 10px; border-radius: 4px; font-size: 13.5px;
  border: 1px solid #c8d4dd; background: #fff; }
.pgCur { background: #1c4e73; color: #fff; border-color: #1c4e73; }
.pgGap { color: #728496; }

.post { background: #fff; border: 1px solid #d5dee5; border-radius: 6px;
  margin-bottom: 12px; }
.postHead { display: flex; gap: 12px; align-items: baseline;
  padding: 8px 14px; background: #f4f7f9; border-bottom: 1px solid #e2eaf0;
  border-radius: 6px 6px 0 0; font-size: 13px; color: #5a6b7b;
  flex-wrap: wrap; }
.postHead .author { font-weight: 700; color: #1c4e73; font-size: 14px; }
.permalink { margin-left: auto; color: #9ab; }
.postBody { padding: 12px 14px; overflow-wrap: anywhere; }
.postBody img.bbImage { max-width: 100%; height: auto; max-height: 640px;
  border-radius: 4px; margin: 4px 0; display: block; }
.postBody ul, .postBody ol { margin: 6px 0 6px 24px; }
.indent { margin-left: 22px; }
.bbHeading { font-weight: 700; font-size: 17px; margin: 8px 0 4px; }
.userTag { color: #176093; }

blockquote.quote { border-left: 3px solid #b9cbd8; background: #f4f7f9;
  padding: 8px 12px; margin: 8px 0; border-radius: 0 4px 4px 0;
  font-size: 14px; }
.qHead { font-weight: 700; font-size: 12.5px; color: #5a6b7b;
  margin-bottom: 4px; }

pre.bbCode { background: #f0f3f5; border: 1px solid #dbe3e9; padding: 10px;
  border-radius: 4px; overflow-x: auto; font-size: 13px; margin: 8px 0; }
code { font-family: ui-monospace, Menlo, Consolas, monospace; }

.media { margin: 8px 0; }
.media iframe { width: 560px; max-width: 100%; aspect-ratio: 16 / 9;
  border-radius: 4px; }

.tScroll { overflow-x: auto; }
table.bbTable { border-collapse: collapse; margin: 8px 0; }
.bbTable td, .bbTable th { border: 1px solid #c8d4dd; padding: 4px 10px; }

.attachStrip { border-top: 1px solid #e7edf2; padding: 10px 14px; }
.asHead { font-size: 12px; text-transform: uppercase; letter-spacing: .04em;
  color: #728496; margin-bottom: 6px; }
.attachStrip .thumb img { max-height: 140px; max-width: 200px;
  border-radius: 4px; margin: 0 8px 8px 0; vertical-align: top; }
.attachLink { font-weight: 600; }
.fsize { color: #728496; font-size: 12.5px; }
.attachMissing, .attachRef { color: #98a6b3; }

.edited { padding: 0 14px 8px; color: #98a6b3; font-size: 12.5px;
  font-style: italic; }
.likes { padding: 0 14px 10px; color: #5a6b7b; font-size: 13px; }

.poll { background: #fff; border: 1px solid #d5dee5; border-radius: 6px;
  padding: 12px 14px; margin-bottom: 14px; }
.poll h2 { font-size: 16px; margin-bottom: 10px; }
.pollOpt { display: grid; grid-template-columns: 1fr 220px 40px; gap: 10px;
  align-items: center; margin-bottom: 6px; font-size: 14px; }
.pollBarWrap { background: #edf1f4; border-radius: 4px; height: 14px; }
.pollBar { background: #4a89b8; height: 14px; border-radius: 4px; }
.pollVotes { text-align: right; font-variant-numeric: tabular-nums; }
.pollTotal { color: #728496; font-size: 12.5px; margin-top: 6px; }

.siteFoot { margin-top: 28px; padding: 16px 0 28px; color: #728496;
  font-size: 13px; border-top: 1px solid #d5dee5; }

@media (max-width: 640px) {
  .tLast { display: none; }
  .search input[type=search] { width: 150px; }
  .pollOpt { grid-template-columns: 1fr 90px 36px; }
}
